一、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