Py学习  »  Git

git签出到新分支不会刷新索引和工作目录的内容

Gaurang Tandon • 5 年前 • 1453 次点击  

我一直在研究progit一书,无意中发现了“reset demystified”主题下的这一段:

切换分支或克隆也要经历类似的过程。当您签出分支时,它会将head更改为指向新的分支引用,用该提交的快照填充索引,然后将索引的内容复制到工作目录中。

但是,正如您在下面的终端输出中看到的,我无法复制该行为。

GaurangTandon@Gaurang MINGW64 /j/test (master)
$ git status
On branch master
nothing to commit, working tree clean

GaurangTandon@Gaurang MINGW64 /j/test (master)
$ touch a.txt

GaurangTandon@Gaurang MINGW64 /j/test (master)
$ git checkout -b "dev"
Switched to a new branch 'dev'

GaurangTandon@Gaurang MINGW64 /j/test (dev)
$ git status
On branch dev
Untracked files:
  (use "git add <file>..." to include in what will be committed)

        a.txt

nothing added to commit but untracked files present (use "git add" to track)

据我所知,根据我对那一段的解释:在我退房后 新的分支 dev ,git应该用提交的快照填充索引。 master 是在 开发 主人 指向相同的提交,正如我在 Visualizing Git )中。该提交不应该有该文件 a.txt ,因为它是在提交之后创建的。另外,我的工作目录应该与索引具有相同的内容,即没有文件 文本 是的。

然而,正如您在上面的输出中看到的,我的工作目录碰巧有 文本 ,它由 git status 是的。

我想知道我在解释这段话时犯了什么错误。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/47451
 
1453 次点击  
文章 [ 2 ]  |  最新文章 5 年前