簡體   English   中英

從github倉庫派生出來的git pull產生沖突

[英]git pull from a github repository fork gives conflicts

我在github上分支了git://github.com/rails/rails.git 我的分叉存儲庫位於git://github.com/waseem/rails.git 我想測試其他用戶提交到rails mainline的一些補丁。 可以說我想在git://github.com/joelmoss/rails.git migration_status分支中測試代碼。

可以說我

master $ git remote add joelmoss git://github.com/joelmoss/rails.git

master $ git remote add mainline git://github.com/rails/rails.git

我一直在從Rails Mainline進入我的主人。

master $ git pull mainline master

根據http://guides.rubyonrails.org/contributing_to_ruby_on_rails.html#testing-patches,我應該創建一個本地主題分支,並從joelmoss/migration_status中進行更改。 所以我,

master $ git checkout -b migration_status創建本地主題分支。

當我這樣做時:

migration_status $ git pull joelmoss migration_status

我遇到很多沖突。 我也嘗試了migration_status $ git pull --rebase joelmoss migration_status但是我仍然遇到沖突。

pull --rebase的情況下,我認為(如果正確,則正確),git嘗試將我的本地更改應用於從joelmoss/migration_status獲取的更改joelmoss/migration_status 理想情況下,它應該相反。 為了考慮此選項,我做了以下工作。

master $ git fetch joelmoss

master $ git checkout -b joel_migration_status joelmoss/migration_status

joel_migration_status $ git rebase master它仍然給了我很多沖突。

如何提取提交到本地主題分支之一的補丁程序而不會產生沖突? 我無法解決那些沖突,因為我對什么代碼不知道該怎么做並不了解。

在這種情況下, joelmoss/migration_status看起來是基於3.1.0的,該版本從5月的mainline/master分裂而來。 因此,如果您進行合並,那么您試圖調和每個人4個月的開發價值,而這些分支似乎從未打算進行合並。

您要做的是將本地更改也基於3.1。 那不能保證消除所有沖突,但是至少它應該是您所知道的,因為它是您直接更改的代碼。

git checkout -b master-3-1 master
git rebase --onto joelmoss/migration_status mainline/master master-3-1

暫無
暫無

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

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