分支是 git 的 「killer feature」。 git 鼓勵使用者多用分支。
生成新的分支:
git branch testing
切換到另乙個分支:
git checkout testing
這兩條命令可以合併成:
git checkout -b testing
顯示分支圖:
git log --oneline --decorate --graph --all
合併乙個分支到主分支,比如我們有如下的分支:
我們要將 iss53 分支合併入master:
git checkout master
git merge iss53 # master 分支合併 iss53 分支做的變動。
git branch -d iss53
合併後:
如果合併時發生衝突,那麼需要我們手動修改,解決衝突。解決之後再次 :
git commit
列出所有的分支:
git branch
git branch -v
git branch --merged
git branch --no-merged
強制刪除乙個分支,即使這個分支沒有合併到其他的分支:
git branch -d testing
顯示遠端庫的分支:
git ls-remote [remote]
git remote show [remote]
將本地分支推送到遠端庫。
git push
git push origin serverfix
建立乙個本地分支來跟蹤遠端庫的分支:
git checkout -b serverfix origin/serverfix
git checkout --track origin/serverfix
如果遠端庫中只有乙個 serverfix,那麼可以簡單的寫為:
git checkout serverfix
如果本地分支想換個名字,可以這樣:
git checkout -b sf origin/serverfix
如果已經有了個本地分支,想讓這個分支跟蹤乙個遠端分支,那麼可以這樣:
git branch -u origin/serverfix
git branch --set-upstream-to origin/serverfix
將乙個遠端庫的分支合併到當前分支。
git merge origin/serverfix
如果要檢視本地分支都跟蹤了哪些遠端分支,可以:
git branch -vv
刪除乙個遠端分支:
git push origin --delete serverfix
rebase 操作:
git checkout experiment
git rebase master
不要再遠端倉庫上執行rebase 。
每次pull 時自動執行個 rebase:
git config --global pull.rebase true
pro git學習筆記 4
首先,請不要在更新中提交多餘的白字元 whitespace git 有種檢查此類問題的方法,在提交之前,先執行git diff check,會把可能的多餘白字元修正列出來。下面的示例,我已經把終端中顯示為紅色的白字元用x替換掉 接下來,請將每次提交限定於完成一次邏輯功能。並且可能的話,適當地分解為多...
《ProGit》閱讀筆記
modified staged 預設編輯器是vim,可以使用如git config global core.editor emacs更換 使用git config list檢查配置資訊,使用git config 檢查某一項配置 獲取幫助 忽略檔案 gitignore檔案 abc 匹配任何乙個列在方括...
git學習筆記2 ProGit2
先附上教程 progit 2 git 自帶乙個 git config 的工具來幫助設定控制 git 外觀和行為的配置變數。這些變數儲存在三個不同的位置 你可能會看到重複的變數名,因為 git 會從不同的檔案中讀取同乙個配置 例如 etc gitconfig與 gitconfig 這種情況下,git ...