[英]How to I combine two separate Git repositories?
我已經克隆了一個git repo ,其中包含我的emacs配置文件。我想在子目錄中添加pylookup 。 正確的方法是什么?
以下是我可以想到的選項。
如果我將其克隆到~/.emacs.d/pylookup/
並將該文件夾添加到我的emacs存儲庫中,當我這樣做時,該文件夾是否可以正確更新:
cd ~/.emacs.d/pylookup/ git pull cd ~/.emacs.d git commit -a -m "updates to pylookup" git push
也就是說,當我在其他機器上進行這些更改時,我將擁有新版本的pylookup嗎?
我是否只是讓我的emacs存儲庫忽略pylookup/*
並在每次更新pylookup時在每台機器上對其進行更新。 如果有一些回購和一些機器,這將很煩人,但我可以接受。
git submodule
有一些聰明的把戲嗎? 如果可以的話,您能提供一個解釋嗎,我不太了解該文檔 。 我將如何為emacs和pylookup提取更改。
我是否應該回答2,但要編寫一個腳本來更新所有子倉庫。 如果這樣做的話,每次pylookup更改時,我都可以在每台機器上運行一次。
幾個可能的相關職位。
如果創建一個Git子模塊 :
$ git submodule add git://github.com/tsgates/pylookup.git pylookup
$ git submodule init pylookup
$ git submodule update pylookup
假設pylookup進行了一些更改,並且您希望獲得它們:
$ cd pylookup
$ git pull origin master
$ cd ..
$ git add pylookup
$ git commit -m "Track new commit of pylookup"
我使用了具有類似問題的子樹合並-http: //git-scm.com/book/en/Git-Tools-Subtree-Merging 。 就像是:
$ git remote add -f pylookup /path/to/pylookup
$ git merge -s ours --no-commit pylookup/master
$ git read-tree --prefix=pylookup/ -u pylookup/master
$ git ci -m "merging pylookup into pylookup subdirectory"
此處的好指南: http : //jasonkarns.com/blog/merge-two-git-repositories-into-one
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.