某些文件发生更改时发出Git警告

时间:2014-09-17 13:12:14

标签: git

当我" git pull"我工作在大量文件上的项目有时会从其他开发人员那里下来。变化。我希望能够标记某些我想要被警告的文件,这些文件在拉动过程中可能会遗漏在文本页面中。

例如,如果package.json已经改变,我知道我需要运行" npm i"如果一个.sql文件发生了变化,我知道我需要运行一个脚本来更新数据库模式。如果我错过了这些,那么在我意识到发生了什么之前我会遇到问题。

想到的几个解决方案:

  • 在执行此操作的脚本中包装git。是的,这会起作用,但由于我不得不在机器之间携带该脚本而且可能忘记这样做,因此不太便携。
  • 养成始终运行我的帖子拉动脚本的习惯,即使他们不需要也是如此。这需要时间。

理想的解决方案是能够在本地或全局修改git配置文件以标记文件模式(与.gitignore相同),以便在拉动操作之后或期间突出显示这些文件以供特别注意。

解决方案?

2 个答案:

答案 0 :(得分:3)

每个人都建议您使用gits hooks,但我实际上会采用构建系统方法。

例如,如果package.json发生更改,请在Makefile上创建一个依赖于该规则的规则,并且操作是执行所需的命令。

这样,您的系统依赖性不依赖于您的版本控制系统,并且当您调用make或您使用的任何构建系统时,您总会看到它发生。

答案 1 :(得分:1)

您正在寻找git hooks。钩子是git在命令之前或之后运行的脚本;你可以写自己的。假设每个post-checkout触发其中一个,post-mergepull可能是你做的事情的钩子。正如@meagar指出的那样,您可以编写一个脚本来检查特定文件的更改,然后执行所需的操作而不会有太多麻烦。