目前我有一個代碼庫,沒有很好的文檔,在遠程服務器中稱爲''A
''。
我有一個本地克隆它,叫''B
''。Doxygen本地回購
我要陪以下兩件事情:
- 添加的Doxygen風格的註釋爲「」
B
'生成的文件。 - 在「
B
」中沒有這些註釋的情況下將更改集推送到「A
」。
什麼是最好的方式來設置回購/分支機構實現這一目標?
目前我有一個代碼庫,沒有很好的文檔,在遠程服務器中稱爲''A
''。
我有一個本地克隆它,叫''B
''。Doxygen本地回購
我要陪以下兩件事情:
B
'生成的文件。B
」中沒有這些註釋的情況下將更改集推送到「A
」。什麼是最好的方式來設置回購/分支機構實現這一目標?
你可以設置一個第二支在B
其中:
B
其中增加的Doxygen的風格註釋主枝(這樣:從主分支合併到第二分公司)smudge
是一個腳本,刪除所有的Doxygen註釋(也就是說,如果這些意見很容易分析和檢測)(圖片來自 「Customizing Git - Git Attributes」,從 「Pro Git book」)
,涉及.gitattributes
文件(目前僅在第二分支)
*.cpp filter=removeDoxygen
(由右擴展爲您的項目替換cpp
源)
這涉及到一個本地配置:
git config filter.removeDoxygen.smudge 'removeDoxygen'
隨着removeDoxygen
是您的$PATH
中任何地方的shell腳本。
(它可以是一個shell腳本,即使是在Windows,因爲它會通過msysgit shell執行)
這合併將導致自動修改(由smudge
腳本)的文件,他們將需要添加和在第二個分支承諾。
然後將第二個分支推回去回購A
。
對我的用戶案例更具體:''A'由mercurial維護,一些代碼' 'A''已經有doxygen風格的評論。這裏最好的動作是什麼? – user103500
@ user103500我假設是由git管理的。回購沒有任何變化B:評論將在第二個分支中刪除。當推回到A(http://hg-git.github.io/)時,這些評論應該保持不變。 – VonC
@ user103500如果B沒有直接從A克隆,我會建議推送到A中的新分支,然後在mercurial repo A中進行mercurial merge。 – VonC
我看到git和svn標籤是在編輯中添加的。如果你特別要求如何在mercurial中實現這一點,我建議你在你的問題中指定並刪除svn和git標記 –