Git 当前分支更新时是否会更新工作目录?
在提问之前,我想知道我对一些Git概念的理解是否正确,请随时纠正我:Git 当前分支更新时是否会更新工作目录?,git,Git,在提问之前,我想知道我对一些Git概念的理解是否正确,请随时纠正我: 分支名称指向分支的提示(即结束提交),并且 HEAD指向当前分支的分支名称,并且 当前分支定义为签出到工作目录的分支 以下是我的问题: 通过git命令(任何可以向分支添加提交的git命令)向分支添加新提交时 问题: git命令是否总是将分支名称向前移动以指向 新的承诺 或者有git命令,可以向分支添加新的提交 不要移动分支名称,因此需要我运行一些 附加git命令来移动它 什么时候 通过git命令和 分支名称向前移动以指向
- 分支名称指向分支的提示(即结束提交),并且
- HEAD指向当前分支的分支名称,并且
- 当前分支定义为签出到工作目录的分支
- 通过git命令和
- 分支名称向前移动以指向当前分支中的新提示提交
- 是否需要额外更新HEAD 我的猜测是否定的,因为HEAD已经指向当前分支的名称,即 当前分支的名称已更新为指向新分支 提示提交当前分支,并移动当前分支的 name不会改变HEAD指向当前位置的事实 分支机构的名称。因此,在不改变头部的情况下,一切看起来都很好
- 工作目录是否已更新为与分支的新提示提交相同 或者可以使用工作目录 仍然与分支的上一个提示提交相同,并且 以将当前分支的新提示提交签出到 工作目录,我需要运行一些额外的git命令吗
git push
和git pull
),这让我想到并提出了上述两部分的问题,即可以向分支或当前分支添加提交的任意git命令的问题:git push
向远程服务器上的分支添加新提交
存储库
现在假设
- 远程存储库不是空的,即具有 工作目录,以及
- 就在推之前,当前的 远程存储库是要推送到的分支李>
- 在远程存储库中,
是否移动分支名称以指向新的提示提交 或者远程存储库的用户必须运行一些额外的git命令才能移动它git push
- 在远程存储库中,
是否将工作目录更新为与新的tip提交相同gitpush
- 即,在远程存储库中,是更新的版本(通过
git) 推送当前分支的当前分支(git push之前的“当前”)仍然是 git push之后的当前分支?(请注意电流的定义。) 我在帖子开头说:“现在的分支是 定义为签出到工作目录中的分支。“)
git pull
的合并步骤也会使分支的banch名称前进,以指向分支上新的top commit
问题:
- 在本地存储库中,
是否将工作目录更新为与新获取的tip commit相同git pull
- 即,在本地存储库中,当前分支的更新版本(通过
)在git pull
之后仍然是当前分支吗?(注意我在文章开头给出的当前分支的定义:“当前分支被定义为签出到工作目录中的分支。”)git pull