从存储库中删除文件但保留在本地

Rod*_*uza 345 git gitignore git-rm

我有一个文件夹,我想在我的远程存储库中删除.我想删除它,但将文件夹保存在我的电脑中

jam*_*san 603

git rm --cached -r somedir
Run Code Online (Sandbox Code Playgroud)

将暂存目录的删除,但不会触及磁盘上的任何内容.这也适用于文件,例如:

git rm --cached somefile.ext
Run Code Online (Sandbox Code Playgroud)

之后您可能想要添加somedir/或添加somefile.ext到您的.gitignore文件,以便git不会尝试将其添加回来.

  • 然后将路径添加到.gitignore,以便git不会尝试让您稍后添加它. (24认同)
  • 如果我有第三个遥控器怎么办?将来拉动相应的文件会被删除吗?我问,因为我觉得这是一个非常常见的用例,即检查一些文件进入回购,稍后意识到他们在远程数据库之间存在分歧,这是有充分理由的,并且应该从来没有在回购首饰中,想要通过完全保留所有本地签出来解决这个问题,但是从repo中删除文件. (7认同)
  • 对于单个文件,您可以执行`git rm --cached path/to/file` (6认同)
  • 当他从遥控器拉出时,这会导致(文件中)目录被删除吗? (3认同)