【发布时间】:2018-03-03 08:36:37
【问题描述】:
git 有没有办法在给定的一组文件上默认得到git update-index --assume-unchanged FILE_NAME 的结果?例如,一个 git 配置文件,它列出了默认不跟踪更改的文件,这样我们在克隆 repo 后就不必运行命令?这些文件将以默认格式存在于存储库中,由开发人员拉取,并且他们对文件所做的任何更改都不会被后续拉取跟踪或覆盖。
例如:我有一个 web.config 文件,其中包含项目使用的连接字符串的占位符。理想情况下,开发人员会克隆存储库并将这些占位符替换为指向其本地资源的连接字符串。无需运行任何命令。这样,这些更改将保留在后拉中,除非 web.config 文件的格式在 repo 中更改,并且它们的本地更改不会被推送到 repo。
这在 git 中可以通过配置文件实现吗?还是我总是必须运行“一组文件假定不变”的命令?
【问题讨论】:
-
简短的回答是“不”,稍长一点的回答是“不要那样做,但如果你必须这样做,你可能想要
--skip-worktree”。 (通常,您应该做的是完全忽略这些文件,永远不要提交它们,而是让存储库包含“示例”或“默认”文件,而不是忽略安装脚本如果合适,请复制和更改。您需要此安装脚本才能运行git update-index,因此您可以使用它进行复制和调整。)
标签: git web-config config ignore