【问题标题】:Stop tracking file locally, but let other repo users keep tracking it? [duplicate]停止在本地跟踪文件,但让其他 repo 用户继续跟踪它? [复制]
【发布时间】:2019-10-06 20:53:51
【问题描述】:

我正在使用 Git 和 GitHub 合作开发一个 IntelliJ IDEA 项目。 repo 的原始创建者将 IntelliJ .idea 文件夹添加到 repo 中,我发现在提交对话框中不断弹出对 IDE 文件的更改很烦人。 .idea 文件夹实际上已添加到 .gitignore,但这是在它们已经被跟踪之后发生的。

我使用git rm --cached -r -f .idea/ 从本地存储库中删除了该文件夹,据我了解,它从存储库中删除了文件。

但是,其他协作者仍然希望能够提交并将他们的更改推送到.idea 文件夹。所以我只想在本地忽略.idea 文件夹。

文件夹及其内容现在在提交对话框中显示为deleted,我担心如果我现在提交并推送,它也会影响其他协作者 - 对吧?我应该怎么做才能在本地忽略此文件夹但不影响仍然希望能够提交并将更改推送到文件夹的其他人?这甚至可能吗?

【问题讨论】:

  • 使用skip-worktree 功能:stackoverflow.com/a/13631525/717372
  • @Philippe 谢谢,我刚刚找到并尝试了该命令,并且它有效 - 尽管我必须先将文件夹添加回 repo,然后出于某种原因在每个命令上运行 skip-worktree 命令.idea 文件夹中的文件。简单地在文件夹上运行它似乎可以工作,但更改仍然显示在 git status 和 IntelliJ 提交对话框中。我发现这里的答案很有用:stackoverflow.com/a/40272289/930640

标签: git github intellij-idea gitignore git-rm


【解决方案1】:

试试git update-index --skip-worktree [file]

正如 cmets 中所指出的,this answer 提供了更多洞察力。

【讨论】:

  • 再一次,错误地使用了`假设-未更改`(用于性能)。应该是skip-worktree(在本地忽略):stackoverflow.com/a/13631525/717372我不知道为什么大多数人在大多数stackoverflow答案上都错了......
  • 哦.. 没错。我的错!用正确的信息更新答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-12-14
  • 1970-01-01
  • 2022-10-04
  • 2017-12-31
  • 2014-04-14
  • 1970-01-01
  • 2012-03-05
相关资源
最近更新 更多