一、Git设置
1. 下载git到本地。
2. 注册并可以正常登录gitlab。
3. 正常创建自己的git密钥。
二、代码下载
1. 新建一个文件夹来存储git上的项目代码。
2. 在该文件夹下,右键点击”Git Bash here“:
3. git clone gitlab的.git后缀地址,然后回车。
在命令行里输入:git clone git地址。
4. 输入用户名和密码,用户名和密码为你登录gitlab的账号和密码,之后点击回车
三、分支操作
1.查看分支:git branch -r
2.更新远程新分支:git remote update origin --prune
3.切换新分支
4.删除本地分支:
git branch -D BranchName
其中-D也可以是--delete,如:
git branch --delete BranchName
5.删除本地的远程分支:
git branch -r -D origin/BranchName
6.远程删除git服务器上的分支:
git push origin -d BranchName
其中-d也可以是--delete,如:
git push origin --delete BranchName
7.切换远程分支:
git checkout -b dev origin/dev,作用是checkout远程的dev分支,在本地起名为dev分支,并切换到本地的dev分支
8.创建本地分支:
git checkout -b dev,创建本地dev分支
四、bug分支操作
场景:
当前正在开发新功能,但是原来功能有bug,需要及时修复,这就需要保存当前新增代码,切换到bug分支,进行bug修复,然后在返回新功能分支,继续开发。
1.查看当前分支状态
可以看到当前没有提交和修改过的文件
$ git status
2.保存现场
$ git stash
使用该命令可以将当前工作现场进行保存,后面可以进行恢复,继续干活
可以再次执行:git status命令,可以看到现场已经干净
3.切换分支,同步代码,修复bug
如果在master上修复bug,需要先创建一个临时bug-5101
分支,然后pull远端代码,就可以进行修复了
$ git checkout master
Switched to branch 'master'
$ git checkout -b bug-5101
Switched to a new branch 'bug-5101'
4.bug完成修复,merge到远端
修复完成后,切换到master
分支,并完成合并,最后删除bug-5101
分支,至此bug修复完成,需要继续原来新功能的开发了。
$ git checkout master
Switched to branch 'master'
$ git merge --no-ff -m "merged bug fix 5101" bug-5101
Merge made by the 'recursive' strategy.
5.切换到dev分支
$ git checkout dev
Switched to branch 'dev'
$ git status
On branch dev
nothing to commit, working tree clean
6.还原原来的工作现场,继续干活
先查看保存现场列表,然后指定进行恢复
$ git stash list
stash@{0}: WIP on dev: f52c633 add merge
恢复的2种方式:
- 用
git stash apply
恢复,但是恢复后,stash内容并不删除,你需要用git stash drop
来删除。可以多次stash,恢复的时候,先用git stash list
查看,然后恢复指定的stash,用命令:
$ git stash apply stash@{0}
$ git stash drop stash@{0}
- 用
git stash pop
,恢复的同时把stash内容也删了
$ git stash pop
On branch dev
Changes to be committed:
$git stash list