一.基礎使用
1.初始化本地倉庫
git init
2.關聯遠端倉庫
git remote add origin [email protected]:使用者名/倉庫名.git
3.添加遠端倉庫檔案到本地
git pull origin master
- 本地自動建立master分支用于跟蹤遠端origin/master分支
4.建立本地分支
$ git checkout -b 新的分支名
Switched to a new branch "新分支名"
- 和以下效果等價
$ git branch 新分支名 (建立分支)
$ git checkout 新分支名 (跳轉到新分支)
- 建立分支以建立新分支時所在的分支為源,比如在master中建立倉庫,新分支的初始内容和建立時master相同,這點可用于版本管理。
注意:在分支間跳轉本地檔案會切換到分支的檔案狀态,當送出修改送出到master,切換到其他分支,合并分支,git merge master,分支合并不止分支合到主分支,也可主合到分支。是以不論你在本地将修改送出到那個分支,可通過合并分支實作本地分支保持一緻,将修改添加到其他分支。
5.将本地分支push到遠端倉庫
$ git push origin 分支名
- 遠端新增分支,和本地push上去的分支關聯
git分支與版本管理、版本回退、沖突解決記錄
6.修改本地檔案,并送出
$ git add 檔案名
$ git commit -m 備注
$ git push origin 分支名
7.删除遠端分支
git push [遠端名] :[分支名]
栗子:如果想在伺服器上删除serverfix 分支,運作下面的指令:
$ git push origin :serverfix
To [email protected]:schacon/simplegit.git - [deleted] serverfix
8.檔案重命名修改送出
- 修改後直接用git commit -m 備注
- 然後 git push origin 分支名
注意:多個檔案修改,可先将檔案git add ,将檔案都加進去,最後一次git commit ,git push origin --
9.檢視狀态(是否有未跟蹤檔案,是否有已修改未送出檔案等狀态改變),push前可檢視
$ git status
10.檢視送出記錄
$ git log
11.回退
$ git reset
小結:
注意:要關聯本地和遠端倉庫,才可pull和push
二.版本管理(與建立分支結合)
1.master主要為釋出版本,如果要進行修改則以master為源建立分支,并将分支push到遠端,分支可命名為deveop1.0,或按照版本命名versin1.0,ersin2.1等。
如果是添加功能可用feature,修補bug可用fix_bug;
2.在分支中送出修改,确定合并分支到master
$ git checkout master (回到主分支)
$ git merge 分支名 (合并分支。本地合并)
$ git push origin master(将主分支修改push到遠端,遠端合并)
三.版本回退
1.當已經送出修改,但是想回到修改前的樣子時,可使用版本回退
$ git reset --hard HEAD^ (查找版本号)
HEAD is now at f8dce4b 完成成就界面設計及編碼,根據資料内容顯示功能實作//“f8dce4b是版本号,後面緊跟着的是commit注釋”
$ git reset --hard HEAD^
HEAD is now at 1bc0043 Merge branch 'master' of put-me-down
2.找到想要的那個版本的版本号後進行回退
$ git reset --hard f8dce4b(版本号)u
HEAD is now at f8dce4b 完成成就界面設計及編碼,根據資料内容顯示功能實作
四.merge時出現沖突
1.合并分支語句
$ git merge 分支名
2.在寫合并分支語句之前把要合并的分支的内容pull下來,如将主分支pull下來
$ git pull origin master
-
pull 會出現沖突,pull下來的版本比本地版本更新,可以用git status 看存在哪些沖突,打開檔案進行修改,如果要儲存原來版本,可在修改前用下列語句存儲代碼:
(點選這裡)
- 和分支進行合并的時候(git merge 分支名),會出現沖突,同樣用git status進行檢視沖突,或者運作代碼看報錯情況,對沖突進行修改。修改後要用git status 檢視情況:
git分支與版本管理、版本回退、沖突解決記錄 - 看提示,要将修改的代碼add,add後不能git commit -m "...",git push origin 分支名,這樣會報錯,提示存在未合并的檔案,不可送出,按照git status 的提示,将需要add的檔案都add ,
git分支與版本管理、版本回退、沖突解決記錄 - 然後用git commit 送出,會進入vim 編輯器,寫送出備注,
- 将沖突都解決,并送出後,程式試運作,看是否能跑,能跑再push
git分支與版本管理、版本回退、沖突解決記錄
五.vim編輯器的簡單使用
1.可用下列語句恢複
shift + c 鍵-- 進入編輯狀态
esc鍵 --退出編輯狀态
退出編輯狀态後後“:+wq”退出編輯器
六.儲存檔案
1.儲存
$ git stash save "...."
2.可用下列語句恢複
$ git stash apply