有没有办法让一个永远不会提交的补丁,只改变工作副本?

时间:2014-06-20 14:26:10

标签: git

我想修改一个测试,以便在一些额外的代码中发表评论:

-        /*SimpleMonitor monitor = new SimpleMonitor();
-        machine.attachMonitor(monitor);*/
+        SimpleMonitor monitor = new SimpleMonitor();
+        machine.attachMonitor(monitor);

也就是说,当我在本地构建时,我想启用SimpleMonitor,但我总是希望签入的代码保持注释掉。 SimpleMonitor打印出一些关于我的测试用例内部发生的详细信息。

当然,我永远不会将此更改添加到提交中。

有没有办法使用git我总是可以排除这种变化,即使使用' git add。'或者' git add -A'等等,这样git会跳过这个改变吗?

这个想法是,这是一个仅位于工作副本之上的增量。如果有一些利用藏匿或使用分支或其他东西的巧妙技巧,请告诉我有关它的信息。

1 个答案:

答案 0 :(得分:3)

您可以为您的文件声明一个内容过滤器驱动程序(一个' clean'脚本),它会在签到时自动注释右侧。
这是在.gitattributes文件中完成的:例如参见" Does .gitignore have an equivalent for version controlled files?"。

clean

(图片来自" Customizing Git Attributes"来自Git Book

git config filter.<filtername>.clean ./<filterscript>

您可以在回购邮件中添加<filterscript>个版本。