这是方案
主分会
- 文件名:xxx-master.txt
- 文件内容:
code
code
ID=01
code
code
code
Dev branch
- 文件名:xxx-dev.txt
- 文件内容:
code
code
ID=02
code
code
code
将master合并到dev中时,我想保留xxx-dev.txt作为文件名,ID = 02,但是其他一切都来自master。当将dev合并为master时,反之亦然。这是我可以让GIT理解的东西吗?
答案 0 :(得分:3)
这通常是您需要保留(对于给定文件,此处xxx-dev.txt
)基于分支的不同内容,一种方法是:
xxx-dev.tpl
xxx-dev.dev
,xxx-dev.master
:由于它们不同,因此没有合并问题。为此,您需要在子模块库中注册(.gitattributes
declaration) content filter driver 。
(来自“Customizing Git - Git Attributes”的图片,来自“Pro Git book”)
与模板文件(smudge
)关联的*-dev.txt
脚本会通过查看右侧的值生成(自动git checkout
)实际的xxx-dev.txt
文件{1}}值文件。
生成的实际xxx-dev.<branch>
文件仍然被忽略(xxx-dev.txt
)。
请参阅“git smudge/clean filter between branches”的完整示例。
您的.gitignore
脚本可以通过以下方式确定已签出分支的名称:
smudge