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

一.基礎使用

1.初始化本地倉庫
git

git init

2.關聯遠程倉庫
git remote add origin git@github.com:用戶名/倉庫名.git

3.添加遠程倉庫文件到本地
git pull origin master

  • 本地自動建立master分支用於跟蹤遠程origin/master分支

4.建立本地分支github

$ git checkout -b 新的分支名
Switched to a new branch "新分支名"
  • 和如下效果等價
    vim


    $ git branch 新分支名 (新建分支)
    $ git checkout 新分支名 (跳轉到新分支)

  • 新建分支以建立新分支時所在的分支爲源,好比在master中建立倉庫,新分支的初始內容和建立時master相同,這點可用於版本管理。服務器

注意:在分支間跳轉本地文件會切換到分支的文件狀態,當提交修改提交到master,切換到其餘分支,合併分支,git merge master,分支合併不止分支合到主分支,也可主合到分支。因此不論你在本地將修改提交到那個分支,可經過合併分支實現本地分支保持一致,將修改添加到其餘分支。app

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.文件重命名修改提交3d

  • 修改後直接用git commit -m 備註
  • 而後 git push origin 分支名

注意:多個文件修改,可先將文件git add ,將文件都加進去,最後一次git commit ,git push origin -- code

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
相關文章
相關標籤/搜索