2014-01-09 76 views
0

我有一個git存儲庫,用於維護與研究文章相對應的所有.tex文件,數字和代碼。其實,我有幾篇文章,每篇文章一個倉庫。現在我正在研究具有自己的git存儲庫的論文,其中一些章節將基於以前的研究,即文章庫中的內容。如何維護共享(大部分)文件的兩個git存儲庫?

如何將文章git存儲庫中的相關文件複製到論文存儲庫,以便我可以在兩個存儲庫之間同步選定的提交?

例如,我對論文作出承諾,即更改.tex文件的幾行以使輸出與我論文的格式匹配。這些更改不應該反映在文章庫中。但是,我做了第二次提交,修復了.tex文件的其他部分中的拼寫錯誤。應該將第二次提交的更改以及只有這些更改同步到文章存儲庫。本文的其中一位合着者擴展了文章庫中.tex文件中的一個部分。我希望將這些更改(但僅限於該提交的更改,而不是覆蓋其他部分)轉移到論文存儲庫。

考慮到兩個存儲庫之間的文件的某些部分可能開始發生相當大的分歧,更新一個存儲庫並從另一個存儲庫中選擇更改的最簡單方法是什麼?

回答

0

你在找什麼最可能的git submodules:http://git-scm.com/book/en/Git-Tools-Submodules。這將允許你共享一個掛鉤到特定版本的文件的回購。

如此理想,您將擁有三個倉庫:論文,文章和共享。那麼你會將其他兩個回購作爲子模塊共享。

編輯: 現在,我再次想起來了,我想你也許可以通過簡單地維護多個枝條解決這個問題。一篇用於論文,一篇用於文章。您需要更改的文件:創建另一個分支,進行更改。那麼只將它合併到你想合併更改的分支或分支。我認爲了解git flow工作流程可能會幫助您清楚地思考:http://nvie.com/posts/a-successful-git-branching-model/