我的解決方案存盤在 GitHub 上,我正在使用 Visual Studio 的內置功能來簽入和簽出代碼。目前,我是唯一一個在我的專案上作業的人。但是我已經開始在不同的計算機之間切換。
每次我到達兩臺計算機都有待更改的地方時,我都無法繼續。
我試圖在一臺計算機上推送我的更改,它給了我一個錯誤:
無法推送遠程存盤庫,因為您的本地分支位于遠程分支之后。在推送之前通過拉取更新您的分支。
[拉然后推] [拉] [取消]
如果我選擇[Pull then Push],我會得到一個不同的錯誤。
拉取操作失敗。有關詳細資訊,請參閱輸出視窗。
輸出視窗顯示以下內容。
Pushing master
Hint: You have divergent branches and need to specify how to reconcile them.
Hint: You can do so by running one of the following commands sometime before
Hint: your next pull:
Hint:
Hint: git config pull.rebase false # merge
Hint: git config pull.rebase true # rebase
Hint: git config pull.ff only # fast-forward only
Hint:
Hint: You can replace "git config" with "git config --global" to set a default
Hint: preference for all repositories. You can also pass --rebase, --no-rebase,
Hint: or --ff-only on the command line to override the configured default per
Hint: invocation.
Git failed with a fatal error.
Git failed with a fatal error.
Need to specify how to reconcile divergent branches.
兩個系統都顯示當前分支是master。我期待這些更改被合并,所以我不確定為什么這是一個問題。
有什么方法可以讓 Visual Studio 合并更改并讓我處理任何沖突?
注意:我正在嘗試閱讀此內容,但我沒有為此使用命令列。我寧愿只使用 IDE。它似乎應該支持我正在嘗試做的事情。我讀到的內容似乎表明我需要在拉取設定時設定 Rebase 本地分支,但我不確定我應該將它設定為什么或為什么。
uj5u.com熱心網友回復:
如果您使用的是 Visual Studio 2019 或更高版本,您應該能夠按照這些說明為您的專案設定git pull策略。
這個答案
對您從 Git 看到的警告進行了詳盡的解釋。基本上,git希望您設定一個配置來告訴它如何處理您嘗試更新與本地分支不同的遠程分支的情況。將它設定為False會給你你可能習慣的行為,但我True個人更喜歡。
在 Visual Studio 中設定配置(或在命令列中,如 git 建議的那樣)將解決錯誤。至于您應該為配置選擇哪個選項,這完全取決于您。但我將簡要概述每個選項:
- “真:獲取后將當前分支重新設定在上游分支之上。”
- 更高級的選項,更受有經驗的 Git 用戶的青睞。它將重寫您本地分支的歷史記錄,看起來好像您在上游分支發生任何更改后進行了這些更改。如果您關心的話,這將為您提供更清晰的 git 歷史記錄。不利的一面是,如果您想在本地進行許多小提交,您可能會遇到需要解決每個單獨提交的合并沖突而不是一次解決所有沖突的情況。
- “False:將當前分支合并到上游分支。”
- “默認”選項。這是您和大多數開發人員期望發生的事情。它首先在本地分支上創建一個合并提交,允許您一次解決任何沖突,無論您在本地有多少尚未在上游分支上的提交,然后它會推送。
- “未設定(默認):除非在其他組態檔中指定,否則將當前分支合并到上游分支。”
- 此處的檔案已過時:較新版本的 git 要求您擁有此配置集。所以這不會自動使用默認行為,除非您明確將其設定為
False.
- 此處的檔案已過時:較新版本的 git 要求您擁有此配置集。所以這不會自動使用默認行為,除非您明確將其設定為
- “互動:在互動模式下變基。”
- 稍微高級一點的版本
True。在您傾向于在本地進行大量小提交的情況下很有用,因為它會給您一個重寫本地提交歷史的機會。
- 稍微高級一點的版本
- “保留:在不展平本地創建的合并提交的情況下重新設定基準。”
- 等效于使用 merges選項進行變基。除非您經常執行本地合并,否則您不太可能需要它。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/466301.html
上一篇:從文本框向串列框添加字串
