我已经使用Git几个月了。我终于掌握了提交更改并将更改推送到远程控制器,但我不清楚分支中的文件会发生什么。它们不像我期望的那样工作。
假设我有档案index.html
。如果我执行以下步骤,我希望有一个完全空白的index.html
文件,但事实并非如此。
master
分支机构工作test
test
index.html
master
分行test
如果我打开index.html
,test
仍在我的档案中。我希望,因为我从未提交对文件的更改,也没有将test
分支合并到master
分支,我的index.html
文件应该恢复到我创建之前的状态test
分支。
我一定在想这个错误。有人可以开导我吗?
答案 0 :(得分:2)
切换分支时git的行为是保持修改后的文件不变。这样可以轻松切换到分支并将更改提交到目标分支。来自文档
保留对工作树中文件的本地修改,以便将它们提交给。 (Link)
如果您想让您的工作区域进入当前的主人状态,那么您可以在检查主人后执行以下操作
git reset --hard
答案 1 :(得分:1)
git reset --hard MASTER
或git checkout --force
重置本地更改,则会恢复否则将保留工作树中的更改。
看一下这个问题,就像“HEAD”,“工作树”等术语:Difference between HEAD / Working Tree / Index in Git