git分支與版本管理、版本回退、沖突解決記錄


一.基礎使用

1.初始化本地倉庫

git init

2.關聯遠程倉庫

git remote add origin git@github.com:用戶名/倉庫名.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上去的分支關聯

6.修改本地文件,並提交


$ git add 文件名
$ git commit -m 備注
$ git push origin 分支名

7.刪除遠程分支

git push [遠程名] :[分支名]

栗子:如果想在服務器上刪除serverfix 分支,運行下面的命令:


$ git push origin :serverfix
To git@github.com: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 查看情況:

  • 看提示,要將修改的代碼add,add后不能git commit -m "...",git push origin 分支名,這樣會報錯,提示存在未合並的文件,不可提交,按照git status 的提示,將需要add的文件都add ,

  • 然后用git commit 提交,會進入vim 編輯器,寫提交備注,

  • 將沖突都解決,並提交后,程序試運行,看是否能跑,能跑再push


五.vim編輯器的簡單使用

1.可用下列語句恢復


shift + c 鍵-- 進入編輯狀態
esc鍵 --退出編輯狀態
退出編輯狀態后后“:+wq”退出編輯器

六.保存文件

1.保存

$ git stash save "...."

2.可用下列語句恢復

$ git stash apply 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM