需要一点帮助来理解 Git 对分支的作用

  • 本文关键字:Git 分支 作用 帮助 一点 git
  • 更新时间 :
  • 英文 :


我已经使用 Git 几个月了。我终于掌握了提交更改并将更改推送到远程的窍门,但我不清楚分支中的文件会发生什么。它们没有按照我期望的方式工作。

假设我有文件index.html。如果我执行以下步骤,我希望有一个完全空白的index.html文件,但事实并非如此。

  1. master分行工作
  2. 创建新的分支test
  3. 结帐test
  4. 开放式index.html
  5. 将"测试"添加到文件
  6. 关闭文件
  7. 再次master分行结账
  8. 删除分支test

如果我打开index.html,该test仍在我的文件中。我希望,由于我从未提交对文件的更改,也没有将test分支合并到master分支中,因此我的index.html文件应该恢复到创建test分支之前的状态。

我一定是想错了。有人可以开导我吗?

切换分支时 git 的行为是保持修改后的文件不变。 这样可以轻松切换到分支并将更改提交到目标分支。 从文档中

保留对工作树中文件的本地修改,以便可以将它们提交到 .(链接)

如果您想将工作区置于主控服务器的当前状态,则可以在签出主控后执行以下操作

git reset --hard 
"

index.html"将在您使用git reset --hard MASTERgit checkout --force重置本地更改时恢复。这些操作实际上修改了工作树。

否则,将保留工作树中的更改。

看看这个问题,进入"HEAD"、"工作树"等术语: Git 中的 HEAD/工作树/索引之间的区别

最新更新