使用git完成此操作的最佳方法是什麼?在一次提交中將master從一個存儲庫合併到另一個存儲庫的主文件
我正在創建一個私有存儲庫,並希望能夠定期合併來自另一個公共存儲庫的更改。但是,爲了保持我的私有存儲庫提交歷史記錄清潔,我不想引入公共回購的所有提交,但能夠在一次提交中解決任何和所有更改。
的什麼,我試圖做例子:
我初始化我的服務器上的存儲庫,myrepo.git
git init --bare
我克隆此本地,
git clone [email protected]:myrepo.git
然後繼續在master
分支上進行初始提交。
然後我修改我的混帳配置,這樣我添加的公共倉庫作爲新remote
[remote "origin"]
url = [email protected]:myrepo.git
fetch = +refs/heads/*:refs/remotes/origin/*
[remote "public"]
url = http://github.com/path/to/publicrepo.git
fetch = +refs/heads/*:refs/remotes/origin/*
做一個git merge -X recursive -s ours public/master
將是有意義的我要什麼,我試圖完成,但我得到的以下:
(master) $ git merge -X recursive -s ours public/master
merge: public/master - not something we can merge
不過,如果我執行git pull public master
,將繼續拉動每一個承諾從public
回購到master
上myrepo
,結尾:
commit 421b15b37efacb84be80b95c8534087e67835017
Merge: be1a905 831a27d
Author: Me
Date: Sun Feb 23 23:04:29 2014 -0500
Merge branch 'master' of http://github.com/path/to/publicrepo into master
這個公共回購有很多提交,它是根本不可行的壓扁他們。
如果可能,我希望看到的master
提交歷史每次我解決myrepo
合併對public
衝突時間Merge branch 'master' of http://github.com/path/to/publicrepo into master
一個提交上myrepo
。
是否可以這樣做,還是有一個更簡單的方法?
謝謝,好點的一切。 – Scott