簡體   English   中英

如何從上游分支合並?

[英]How to merge from upstream branch?

這是我的git設置(我們在公司網絡中使用Git + Atlassian Stash):

upstream:
  master

origin (my fork of 'upstream'):
  master
  branch1 (branch of master, with a few commits on top of it)

clone (local; clone of 'origin'):
  master
  branch1 (ahead of 'origin:branch1' by 1 commit)

我想做的事:

我想合並upstream:master -> clone:branch1 我知道此合並會存在沖突(因為我更改了branch1中的文件,而其他文件在上游已更改)。 完成此操作后,我希望將更改推回origin:branch1 ,其中將包括上游的1 commit +最新庫(我想跟master分支保持最新,因為那是我分支的分支)。 與此同時,我希望它成為一個變基,以便提交歷史記錄是干凈的,並且不會在所有地方產生蜘蛛網。

另一個注意事項是,我不直接使用git命令行。 在Windows上,我使用的是SmartGit,因此,如果有人知道該工具的說明,那將是最理想的選擇。

我如何像上面描述的那樣正確合並?

如果沒有其他人克隆或正在與BRANCH1,你可以重訂它主人的頂部,一旦你已經更新的主上游/大師。

  • 首先, upstream獲取 (SmartGit:“遠程/拉”,選擇“僅獲取”)
  • 然后將master重置為upstream/master (SmartGit:本地/重置)
  • 現在將branch1重新設置為master的基礎(SmartGit:在Branches視圖中,您可以右鍵單擊像master這樣的分支,然后選擇Rebase HEAD以將當前的HEAD重新基礎到所選的分支master
    如有必要, 解決合並沖突
  • 最后,將branch1推送(強制推送)到origin (SmartGit:在Branches視圖的上下文菜單中,您可以在本地分支上調用PushPush To )。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM