2013-07-23 114 views
0

我是Git的新手,我找不到像我所看到的任何東西,所以我認爲我可能只是做錯了什麼。Git rebase重複函數

我想重新分支到主,以便該分支有最新的提交從主,所以我可以在最終合併之前測試它。

這裏是我下面的工作流程:

> git clone <master> 
> git remote add branch_repo <branch> 
> git fetch branch_repo 
> git checkout -b new_branch branch_repo/branch 
> git fetch origin 
> git rebase origin/master 

其他重要信息:

  • 該分公司已在整個代碼庫幾個顯著變化
  • 法師被重構至少一次,因爲初始分支

結果是,船尾呃rebase完成,我解決所有合併衝突,結果文件有許多重複功能。有時候自動合併對我來說是沒有意義的 - 就像一個函數的主體放置在一個完全不同的函數中一樣。

我的工作流程是否錯誤,或者這只是重構+主版本的不幸副產品,必須手動解決?

+0

你能告訴你在這裏試圖完成什麼嗎?你已經有了一個master分支,你想在master的頂部創建一個new_branch並添加東西給它? – noMAD

+0

而你不克隆分支,你克隆一個回購 – noMAD

+0

試圖添加更多的上下文 - 我試圖帶來的分支加快,所以它有所有主提交,所以它可以正確測試。 – Sid

回答

0

好的,如果我瞭解情況正確,就是這樣。你分出了主人,做了一些改變,但在你將改變推給主人之前,其他人更新了主人。所以,現在你必須重新定義主人,以便你掌握新的變化。那麼這裏是你如何做到這一點。你並不完全錯誤。

(Assuming you are in you branch) 

1. > git checkout master 
2. > git pull (assuming your remote points to origin/master) 
3. > git checkout your_branch (assuming there were no merge conflicts during the pull) 
4. > git rebase -i master (now that your local master is up to date you can rebase off it) 

排除合併衝突,你應該很好去。

+0

謝謝!互動式旗幟以某種方式幫助。我認爲其中一個合併只是一團糟(我不得不手動刪除大量重複的內容 - 但這一次很明顯) – Sid