1.查看分支 查看本地分支 git branch 查看遠程分支 git branch -r 查看本地和遠程分支 git branch -a 2.創建分支 使用以下命令創建一個本地分支 git branch <本地分支名> 使用以下命令創建一個本地分支且新建分支從特定分支拉取代碼 git branch ...
1.查看分支
查看本地分支
git branch
查看遠程分支
git branch -r
查看本地和遠程分支
git branch -a
2.創建分支
使用以下命令創建一個本地分支
git branch <本地分支名>
使用以下命令創建一個本地分支且新建分支從特定分支拉取代碼
git branch <本地分支名> origin/<遠程分支名 or 本地分支名>
使用以下命令創建一個本地分支且新建分支基於某次提交創建
git branch <本地分支名> commit_hash
使用以下命令創建一個本地分支並切換到該分支上:
git checkout -b <本地分支名>
使用以下命令創建一個本地分支並切換到該分支上且新建分支從特定分支拉取代碼
git checkout -b <本地分支名> origin/<遠程分支名 or 本地分支名>
使用以下命令創建一個本地分支並切換到該分支上且新建分支基於某次提交創建
git checkout -b <本地分支名> commit_hash
3.刪除分支
刪除本地分支
git branch -D <本地分支名>
刪除遠程分支
git push origin -d <遠程分支名>
4.合併分支
假設把dev分支的代碼合併到master分支,執行如下命令
git checkout master
git merge dev
要將“dev”分支合併到master分支併在合併記錄中只顯示一次提交,可以使用以下命令:
git checkout master
git merge dev --squash
上述命令會將“dev”分支合併到當前分支,併在合併記錄中只顯示一次提交。在這個過程中,Git 會將合併後的所有提交合併到一起,並要求你輸入一個提交信息。你可以輸入任何你想要的提交信息。
解決的問題就是在開發分支開發一個功能提交了很多次,但是在master分支只需要一次提交就可以了(還有一種方法是rebase,後面會說到)
下麵是一些常用的合併選項:(參考即可)
- --no-commit:在合併之前不要提交更改。這個選項可以在合併過程中出現衝突時使用。
- --strategy=<strategy>:指定合併策略。這個選項可以用來指定使用的合併策略。預設的合併策略是“recursive”,它會嘗試遞歸地合併分支。你也可以使用“recursive”和“theirs”選項來實現更優雅的合併。
- --strategy-option=<option>:指定合併策略選項。這個選項可以用來指定合併策略的選項。例如,你可以使用“--strategy-option=theirs”選項來實現更優雅的合併。
- --squash:在合併之前將所有更改合併到一次提交中。這個選項可以在合併過程中出現衝突時使用。
- --no-squash:在合併之前不要將更改合併到一次提交中。這個選項是預設選項。
- --abort:停止合併過程並退出。這個選項可以在合併過程中出現問題時使用。
- --continue:繼續合併過程。這個選項可以在合併過程中出現問題時使用。
- --no-ff:在合併分支時創建一個新的提交。這個選項是預設選項。如果你使用了“--no-ff”選項,Git 將會在合併分支時創建一個新的提交,併在提交信息中指出這是一次新的提交。
- --no-edit:在合併過程中不要編輯合併信息。這個選項是預設選項。如果你使用了“--no-edit”選項,Git 將會在合併過程中不允許你編輯合併信息。
- --allow-unrelated-histories:允許合併不相關的歷史記錄。這個選項是預設選項。如果你使用了“--allow-unrelated-histories”選項,Git 將會允許你合併不相關的歷史記錄。
git fetch
git stash
# 保存當前未commit的代碼
git stash
# 保存當前未commit的代碼並添加備註
git stash save "備註的內容"
# 列出stash的所有記錄
git stash list
# 刪除stash的所有記錄
git stash clear
# 應用最近一次的stash
git stash apply
# 應用最近一次的stash,隨後刪除該記錄
git stash pop
# 刪除最近的一次stash
git stash drop
git revert
git reset
git cherry pick
git rebase