Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
更改.gitignore时,是否所有开发人员都需要运行`git rm--cached<;路径>;`?_Git_Gitignore_Git Rm - Fatal编程技术网

更改.gitignore时,是否所有开发人员都需要运行`git rm--cached<;路径>;`?

更改.gitignore时,是否所有开发人员都需要运行`git rm--cached<;路径>;`?,git,gitignore,git-rm,Git,Gitignore,Git Rm,如果我将Git已经跟踪的文件添加到我的.gitignore,我只需运行 git rm --cached <path> git-rm——缓存 应用新规则。我将其推送到服务器,服务器将不再接收我的更改。我是否必须告诉我的开发团队中的每个人,他们需要运行git rm命令,以确保没有人将更改推送到新文件 我是否必须告诉我的开发团队中的每个人,他们需要运行git rm命令,以确保没有人将更改推送到新文件 简短回答 不。你所要做的就是提交并推送到远程 详细答案 如果你想开始忽略一个已经被Gi

如果我将Git已经跟踪的文件添加到我的
.gitignore
,我只需运行

git rm --cached <path>
git-rm——缓存
应用新规则。我将其推送到服务器,服务器将不再接收我的更改。我是否必须告诉我的开发团队中的每个人,他们需要运行
git rm
命令,以确保没有人将更改推送到新文件

我是否必须告诉我的开发团队中的每个人,他们需要运行
git rm
命令,以确保没有人将更改推送到新文件

简短回答 不。你所要做的就是提交并推送到远程

详细答案 如果你想开始忽略一个已经被Git跟踪的文件,你确实需要这样做

  • .gitignore
    中为其添加一个条目,然后
  • 运行
    git rm--cached
    以停止跟踪文件(git无法忽略当前正在跟踪的文件)
  • 现在,如果您提交并推送到远程,那么在远程repo中将不再跟踪有问题的文件。因此,在您的合作者将来自远程的最新更改合并到他们自己的本地repo中(例如通过拉取)后,相关文件也将不再在他们自己的repo中被跟踪。因此,它们将不需要运行

    git rm --cached <path>
    
    git-rm——缓存
    
    此外,因为(即Git正在跟踪它),您的合作者甚至不需要为所讨论的文件添加条目;该条目已存在于
    .gitignore
    中,作为您的更改的一部分,他们已将其纳入自己的本地回购协议中


    当然,这是基于这样的假设,即在您按下…

    即将阅读您的答案之后,没有人会进行强制推动(这有可能会消除您的更改)。是的,
    .gitignore
    也被提交并推送到repo。好吧,听起来好像是当开发人员B从远程退出时,这将包括开发人员A不再跟踪文件这一事实。编辑:还有,谢谢!