1、git配置
首先,需要本地安装git,
其次,在setting文件中配置
2、clone分支代码
3、代码提交 更新
4、打tag
在version control——》log 中,选择开发的分支,右键,新建标签
填写tag名称
新建完成后,在console栏可以看到 git -c tag 1.1.RELEAES 指令
5、push本地tag到远程
执行 git push origin 1.1.4-RELEASE
6、分支切换
右下角的git:master,然后选择origin/master,然后选择你要切换的分支,我目前在master分支,换dev分支就选择origin/dev,然后选择Checkout as new local branch
7、命令行创建本地仓库 以及 推送到远程仓库
8、忽略文件设置
在使用idea git提交文件时,有些文件不需要提交到仓库中,比如日志文件,idea 配置文件等,如下
这时候该怎么办,每次提交都不选这些,太麻烦了。idea提供了一个changeList的功能使得提交时可以忽略这些文件;
1、新建一个changelist,名字为 忽略;
2、提交代码
3、选中想忽略的文件,右键 Move to Another Changelist,这时选择第一步已经建好的 忽略,下次再提交时,只要 Change list选择Default,就不会出现已经忽略的文件。
9、代码提交到本地后回退
在多分支同时开发时,有时候会把分支搞混,导致代码提交出错。
刚把代码提交到本地仓库后才突然发现提交错分支了,那么怎么回退呢?
- 1、先找到这个这个版本的revision number
-
2、Reset Hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容。
3、点击回退,就可以回到到目标版本了
10、刷新远程新建git分支
idea左下角的分支快速切换功能(6、分支切换),不会自动刷新服务器信息,每次新建git分支后,常常找不到。
点击刷新后,就会出来,然后点击pull,在右下角就会出现
2020版本
点击图中标记的那里,就能更新远程最新分支
11、取消本地仓库指定提交
有时候在我们把代码提交到本地仓库后,还没有push到远程仓库,这时候如果我们需要对做一些修改,比如 commit message,或者要添加一些注释,这时候我们可以直接取消本地仓库已经提交了的commit
12、推送本地分支到远程仓库
//git push 远程仓库地址 本地分支名称
C:\work\Bangmart\work\code\git\bangmart-device-msg>git push https://gitlab.bangmart.cn/bangmartos/bangmart-device-msg.git develop
13、修改自己的用户名和邮箱地址:
//查看用户名和邮箱
git config user.name
git config user.email
//修改用户名和邮箱
$ git config --global al user.name "xxx"
$ git config --global al user.email "xxx
14、回退到某个历史版本并推送到远程分支
1.找到要回退的版本号(右击项目--> Git --> Show History -->选中要回退的版本-->Copy Revision Number)
2.打开idea的Terminal 输入命令
git reset --hard 139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96 (后面为版本号)- 把修改推到远程服务器
git push --force
不指定具体分支,需要idea先切换到对应分支
- 把修改推到远程服务器
15、合并分支
把develop分支合并到release
- 1、先切换到目标分支release分支
- 2、然后在Local Branches下,选中develop分支,选择marge into current,进行本地合并
- 3、解决冲突,提交到release分支
16、git密码修改后,idea pull 时报git Authentication failed ‘https://xxxxx/xxxx’
这个是因为window系统中会存入github的账户密码凭证,需要同步更新一下。
在控制面板,凭据管理器中同步更新一下。
17、合并多条提交记录
有时候我们在本地分支上提交了多条记录,但是在合并到release分支时,需要合并成一条提交记录,不然开发人员多时,提交记录会很琐碎。
- 方法1:先reset,然后把所有代码再重新提交成1条;
- 方法2:在提交记录中,选中多条需要合并的提交记录(control键),然后右键选择 squashed ccommit message,会把多条提交记录合并成一条,最后在 force push到远程。