是否可以在 git(本地)中合并/重新設定遠程跟蹤分支?
我知道它可以通過 git pull 來修改。但是我們可以通過任何其他 git 命令(本地)修改遠程跟蹤分支嗎?
uj5u.com熱心網友回復:
. 只是想知道 push 將如何修改遠程跟蹤分支?(當我們將本地分支推送到托管站點時,會在后臺自動運行 git merge 嗎?
遠程端沒有發生合并:
- 要么推送在遠程跟蹤分支之上添加新提交,并且所述遠程分支只是移動其 HEAD 以反映該(推送)分支中的最新提交
- 或者推送添加了不同的歷史記錄,并被取消(除非你這樣做
push --force)
通常使用遠程跟蹤分支在以下基礎上重新設定本地分支:
git switch my-feature-branch
git fetch
git rebase origin/main
git push --force
這樣,當您執行 PR(拉取請求),請求將您的遠程功能分支合并到遠程主分支時,該請求將很容易解決(因為您的功能分支只會在遠程頂部添加新提交main) .
遠程跟蹤分支origin/main由git fetch(使用默認refspec refs/heads/*:refs/remotes/origin/*)修改
uj5u.com熱心網友回復:
我們可以通過任何其他 git 命令(本地)修改遠程跟蹤分支嗎?
push和fetch(這就是)pull修改遠程跟蹤分支。您不能以任何其他方式執行此操作,因為遠程跟蹤分支的全部目的是(等待它)跟蹤遠程,即完美匹配它。如果您可以通過直接編輯遠程跟蹤分支而不與遠程通信來破壞該匹配,那么您的存盤庫將會中斷。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/466874.html
