文章目錄
修改 Git Server Repository Branch 名稱
公司的版控正在從 SVN 轉為 Git,過程中當然問題不斷,其中 Repository 的命名方式與 Branch 的用法都是大家討論的重點,但這是比較偏流程跟政策面的決定,一般工程師只需要努力試著上手 Git 觀念與實際操作即可 — 本來這麼想,結果未如所願呀
因為命名規則異動,就直接影響 Git Repository,原本 push 的 code 都需要調整,今天就來紀錄一下如何修改 Git Repository Branch 名稱
方法一:Rename local branch 再更新 server
將 local branch 改名
git branch -m {old_branch_name} {new_branch_name}
刪除 server 的舊 branch
git push origin :{old_branch_name}
將新 branch puch 至 server
git push origin {new_branch_name}
方法二:Rename local branch 再更新 server
將 local branch 改名
git branch -m {old_branch_name} {new_branch_name}
將新 branch push 至 server 並從 server 上刪除 branch
git push origin {new_branch_name} :{old_branch_name}
方法三:使用遠端 branch 建新 branch 再更新 server
以 server 上的舊 branch 建立新 branch
git branch {new_branch_name} origin/{old_branch_name}
將新 branch push 至 server
git push origin {new_branch_name}
刪除 server 上的舊 branch
git push origin :{old_branch_name}
注意事項:
以遠端建立的 new branch 預設 track origin old branch,所以刪除遠端 branch 後會出現
the upstream is gone.
,需自行修復git branch --unset-upstream
需自行刪除 local branch
git branch -d {old_branch_name}
心得
其實仔細觀察語法,會發現語法都很接近,尤其是方法一與方法二,原則上都一樣,只是方法二語法更加簡潔而已,可以依大家對語法的熟悉度自行選用
比較特別的是方法三,會需要額外刪除 old branch 跟 upstream branch 遺失的問題,雖然都是些小狀況,但如果沒有絕對必要還是建議使用方法一或方法二
參考資料
文章作者 Yowko Tsai
上次更新 2021-11-02
授權合約
本部落格 (Yowko's Notes) 所有的文章內容(包含圖片),任何轉載行為,必須通知並獲本部落格作者 (Yowko Tsai) 的同意始得轉載,且轉載皆須註明出處與作者。
Yowko's Notes 由 Yowko Tsai 製作,以創用CC 姓名標示-非商業性-相同方式分享 3.0 台灣 授權條款 釋出。