Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.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
git忽略更改但不删除文件_Git - Fatal编程技术网

git忽略更改但不删除文件

git忽略更改但不删除文件,git,Git,本质上,我犯了一个错误,在进行一些分析之前,没有在.gitignore中包含2个目录。结果是这些分析产生了大量的文件,现在我在git存储库中跟踪了5000个更改。我想忽略这些更改,让git查看我更新的.gitignore,但我不想删除分析生成的任何文件。什么是合适的git命令 是不是git重置硬[头]?我不想犯任何愚蠢的错误。只需删除所有git缓存: git rm -r --cached . 从索引中删除所有文件后,可以重新添加常规文件(不希望忽略的文件) 好的,谢谢。删除git缓存和应用gi

本质上,我犯了一个错误,在进行一些分析之前,没有在
.gitignore
中包含2个目录。结果是这些分析产生了大量的文件,现在我在git存储库中跟踪了5000个更改。我想忽略这些更改,让git查看我更新的
.gitignore
,但我不想删除分析生成的任何文件。什么是合适的
git
命令


是不是git重置硬[头]?我不想犯任何愚蠢的错误。

只需删除所有git缓存:

git rm -r --cached .
从索引中删除所有文件后,可以重新添加常规文件(不希望忽略的文件)


好的,谢谢。删除
git缓存
和应用
git reset--hard[HEAD]
有什么区别?git rm--cached file将从后台删除该文件。也就是说,当您提交时,文件将被删除。git reset HEAD--文件只需将临时区域中的文件重置为其在HEAD commit上的状态,即,将撤消自上次提交以来对其所做的任何更改。好的,我在删除缓存时出错,似乎需要删除
.git/index.lock
文件。您以root用户身份运行git命令吗?如果是,请运行:
sudorm-f.git/index.lock
,然后按照缓存移除建议:1。与其从缓存中删除所有内容,不如只删除2个rogue目录:
git rm-r--cached dir1 dir2
;2.要重写活动提交,请使用
git commit--amend
$ git add .
$ git commit -am 'Removed files from the index (now ignored)'
$ git push