出于某种原因,当我最初从存储库中获取我的git项目时,我在工作副本中获得了大量文件,这些文件没有对它们进行任何可识别的更改,但是仍然在我的unstaged changes区域中出现.
我在Windows XP上使用Git Gui,当我去查看文件时看看有什么变化.我只看到:
old mode 100755
new mode 100644
Run Code Online (Sandbox Code Playgroud)
有谁知道这意味着什么?
如何从我的未分级更改列表中获取这些文件?(非常讨厌必须通过100个文件,只是挑选我最近编辑过的文件并想要提交).
我看到有趣的帖子解释了微妙之处git reset.
不幸的是,我读的越多,我就越不能完全理解它.我来自SVN背景,Git是一个全新的范例.我很容易变得善变,但Git更具技术性.
我认为git reset很接近hg revert,但似乎存在差异.
究竟究竟做了git reset什么?请包括以下详细说明:
--hard,--soft和--merge;HEAD如HEAD^和HEAD~1;HEAD全球压力水平的影响.虽然reset并checkout具有不同用途的大部分时间,我看不出有什么区别在这两个之间.
可能有一个或任何人都--hard不愿意添加一个选项来做一些基本的checkout事情.
也许你会看到历史的方式有所不同?
如果我对工作树进行了更改并且尚未提交,并且我想恢复我所做的更改,那么它们之间是否存在差异
git reset --hard HEAD
Run Code Online (Sandbox Code Playgroud)
和
git checkout .
Run Code Online (Sandbox Code Playgroud)
?