2013-10-13 61 views
1

我有兩個存儲庫 - 一個是原產地,另一個是由其他團隊開發的應用程序,第二個是由我爲我的團隊創建的本地應用程序 - 目前它是空的。因此,創建這是最容易的部分:在一個存儲庫中有兩個遙控器

git remote add origin <origin url> 
git remote add local <local url> 

什麼,我想實現的是能夠下載所有從起源回購的具體分支提交,做了一些更改,並上傳所有從原產與我的變更提交作爲本地回購的新提交 - 我需要從原始回購保存歷史記錄並在頂部添加我的更改。當然後來我想取回原點並再次添加一些更改等等。我的主要問題是連接這兩個回購。任何想法如何實現它?

我使用Git和Gerrit修訂版。

回答

3

您有一個倉庫<origin url>和另一個倉庫<local url>

您有一個本地存儲庫,您在其中添加了兩個遠程,起源和本地。 (也許使用比「本地」更有意義的名稱)。

通過執行git fetch origin可以從原始獲取所有提交。 - 現在git branch -r應列出所有以remotes/origin爲前綴的分支。

現在您可以簽出創建本地主分支的分支git checkout -b master origin/master。您可以進行提交,然後將所有內容推送至您的local遙控器:git push local master:master。這會將您的本地主人推送到名爲主人的遠程分支。

在你的情況下,git branch -a應該列出當地分行(無前綴)和遠程分行originlocal

只需從一個遠程獲取更改,然後將其推送到另一個遠程。

0

所以,如果你只是要用Gerrit來做這件事,你可能想看看Python包git-review https://pypi.python.org/pypi/git-review。我還沒有嘗試過,但它增加了commadns git,以便當你做「git review」而不是推到原點時,發送到gerrit repo(默認名稱'gerrit')。

如果您不想通過michas解決方案獲得幻想。但是,正如他所提到的,你可能會將你的本地回購重命名爲'gerrit',因此其目的更爲明顯。

相關問題