社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

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

Gaurang Tandon • 5 年前 • 1449 次点击  

我一直在研究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
 
1449 次点击  
文章 [ 2 ]  |  最新文章 5 年前