我们最近开始在我们公司使用git-flow
,我们遇到了以下问题:
我们有一个DEV_MODE
布尔值来控制应用程序中的日志记录级别,我们希望开发分支始终具有DEV_MODE=true
。
但是,在发布版本时,我们会将DEV_MODE
更改为false
。
当我在git-flow
中完成发布时,它会将DEV_MODE=false
合并到开发分支中。
我可以使用一个钩子来阻止这种情况,或者可以告诉git如何合并发布分支中的文件以进行开发?
答案 0 :(得分:5)
您可以通过对文件"模板"进行版本控制来完全避免合并问题,其中包含占位符值:
DEV_MODE=@devmode@
然后,您可以声明content filter driver(在a .gitattributes
file中),以便在结帐时depending on the branch currently checked out自动为该文件生成正确的内容。
(图片显示在" Customizing Git - Git Attributes",来自" Pro Git book")
smudge
脚本可以使用它来检测当前分支:
#!/bin/sh
branch=$(git rev-parse --symbolic --abbrev-ref HEAD)