我正在努力学习Git。
我很困惑git rm --cached file
和
git reset file
两个命令似乎都将文件从暂存区域转移到非暂存区域。这些命令有何不同?
答案 0 :(得分:83)
git rm --cached <file>
将从索引中完全删除文件的内容。这意味着在提交时,文件将从HEAD
提交中删除。 (如果文件仅添加到索引中但尚未跟踪,则这是“无操作”。)
git reset -- <file>
将索引中文件的内容重置为与头部提交相同。这意味着在提交时,不会对文件提交任何更改。如果HEAD
提交中没有跟踪的文件版本,则此操作无效。