簡體   English   中英

如何將我的代碼與來自git中其他存儲庫的代碼合並

[英]How to merge my code with code coming from a different repository in git

一個月前,我開始在github上的一個私有存儲庫中開發一個新功能。 我克隆了存儲庫並將其分支。 從那以后我一直在分支機構工作。

同時,代碼已移至github上的其他存儲庫。 現在,我需要將我所做的工作與新開發中正在進行的新開發合並。

我的點子:

1-簽出新的存儲庫。

2-在我的存儲庫中找到最后一個公共提交,然后再找到新的。 這應該是master分支上的最后一次提交。

3-在master分支和我的工作分支之間創建一個補丁。

4-將補丁應用到新的存儲庫。

這個對嗎? git命令應該執行3和4的操作是什么?

git-rebase應該做你想做的,即把你的改變重放到新的倉庫中:

git remote add new-repo /path/to/new-repo
git fetch new-repo
git checkout hacking-branch
git rebase hacking-branch new-repo/master

如果新存儲庫確實是舊存儲庫的分支/克隆,那么您應該能夠簡單地用新URL替換.git/config中的URL,然后git fetch從新項目中提取所有內容。 完成后,您可以根據需要使用git rebasegit merge

如果您要跟蹤兩個項目(而不是僅跟蹤一個項目)(舊項目中是否有正在進行的開發,您可能還是偶爾需要引入?),那么您可以將新存儲庫添加為另一個遠程git remote add newproj <URL> 你甚至可以在舊的重命名為比其他東西origin ,所以你可以使用origin為新的存儲庫的名稱。

那樣就不必走補丁路線了,因為您實際上只是將本地存儲庫指向新位置,並且可以直接訪問所有新提交以及舊提交。

暫無
暫無

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

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