gpt4 book ai didi

git - 我怎样才能让 git 忽略将来对文件的修订?

转载 作者:IT王子 更新时间:2023-10-29 01:23:59 25 4
gpt4 key购买 nike

我已经创建了一个包含在 git 存储库中的文件的默认版本。重要的是,当有人克隆存储库时,他们会得到该文件的副本。但是,我想设置 git 以便它稍后忽略对此文件的更改。 .gitignore 仅适用于未跟踪的文件。

我的动机是该文件包含特定于机器的信息。我想提供默认值,同时允许人们进行不会被推回原始存储库的本地更改,从而在我们提取新更改时产生 merge 冲突。

我们通常很懒惰并且经常使用 git add .,所以我很确定如果我不能告诉 git 忽略这个文件,对它的更改最终会被提交并且推。

总而言之,

  1. 我想创建一个文件,将其命名为 default_values.txt,将其添加到我的 git 存储库中,并在有人克隆该存储库时包含在内。
  2. git add . 不应将 default_values.txt 添加到提交中。
  3. 这种行为应该传递给存储库的任何克隆。

最佳答案

正如许多其他人提到的,一个好的现代解决方案是:

git update-index --skip-worktree default_values.txt

这将忽略对该文件的更改,包括本地和上游,直到您决定再次允许它们:

git update-index --no-skip-worktree default_values.txt

您可以获得标记为已跳过的文件列表:

git ls-files -v . | grep ^S

请注意,与 --skip-worktree 不同,一旦上游更改被 pull ,--assume-unchanged 状态将丢失。

关于git - 我怎样才能让 git 忽略将来对文件的修订?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4348590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com