作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我当前的项目中,我尝试使用 git 来版本控制文本文件,这些文件由生成代码的软件使用。这本身不是问题,问题是每次我生成代码时,它都会自动更新此文件,其中包含代码生成日期以及我的姓名等属性。
你可以想象它看起来像这样:
SomeHeader{
-SomeProperty : x
-NameOfUserThatGenerateCode: myName
-DateTimeCodeGenerated: 2013-07-23 06:28
-SomeOtherProperty: y
}
我想要的是一种告诉 git 说“没关系”的方法,如果 Name 和 CodeGeneration 时间都改变了(即:忽略有改变),但是一定要关心“SomeProperty”是否改变为说“z”。
在第二种情况下,它将提交整个文件(带有更新的自动生成的文件)。
有办法做到这一点吗?我认识到 git 确实在"file"级别进行更改,但我希望可能有某种我可以绑定(bind)的预处理 Hook ,只有当 git 尝试比较文件更改时才起作用。
对于那些关心的人,这将使我能够正确地控制 Rhapsody 文件的版本。
最佳答案
我推荐:
.gitattributes
file 中声明(详细信息在 Git Pro book 中)。 这个想法是让该脚本在git add
上检测:
请注意,“保留副本”部分也可以通过内容过滤器驱动程序自动化,并在 git checkout
上自动激活 smudge
脚本。
关于git - 如果超过一组特定的行发生更改,如何让 git 仅识别文件已更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17823816/
我是一名优秀的程序员,十分优秀!