目前我有一个代码库,没有很好的文档,在远程服务器中称为''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标记 –