这令人沮丧,我根本找不到如何处理这个问题的正确答案。 我正在经历一次变革[但这只是出现此问题的众多场景之一]并且我有大量的文件“已更改但未更新”,但对于换行符没有区别。
git diff -b
没有回来。
现在我只想删除更改并将文件保留在repo中。 我找到了很多“解决方案”:
1 Stashing changes
a)使用--keep-index [这实际上来自SO]
$ git stash save --keep-index
Saved working directory and index state WIP on COM-23: 4a8abc1 COM-23 changed pa
ckage name
HEAD is now at 4a8abc1 COM-23 changed package name
$ git stash drop
Dropped refs/stash@{0} (7d822e3c6bdc310f4a4be90ed937dd0ea97df627)
$ git status
[tons of files marked as changed but not updated]
b)没有--keep-index
与'a'完全相同
2 git reset
a)只是重置
git reset --hard HEAD
与上述相同
b)添加
git add -A
git reset --hard HEAD
与上述相同
3结帐
git checkout
与上述相同,status返回大量未分段文件。
我很确定我做错了什么或只是误解了问题,但我想做的就是摆脱未经修改的变化! 我怎么能这样做?
谢谢, 克里斯蒂安
答案 0 :(得分:10)
结帐git config [--global] core.autocrlf
。最好将其设置为false
。更改该值后,您可能仍需要git reset --hard
,因为您必须将编辑器换行设置与Git设置同步。
答案 1 :(得分:0)
如果要记录工作目录和索引的当前状态,但想要返回干净的工作目录,请使用git stash。该命令将保存您的本地修改并恢复工作目录以匹配HEAD提交。
这样做。
git stash save --keep-index
如果您想完全删除此更改,请删除存储
git stash drop