Git - 在 checkout 之前更新分支

标签 git

我向分支 master 推送了大约 200 个提交。

在另一台服务器上,分支 A 已 check out ,但我需要在此处 check out master

我可以执行 git checkout master 然后立即执行 git pull

但是在执行 git pull 更新分支之前,旧状态将继续存在。


我可以先更新一个分支然后再检查吗?

最佳答案

运行git fetch后,你可以强制master改变到origin/master所在的位置:

git branch -f master origin/master

然后就可以查看了:

git checkout master

它将处于 origin/master 状态,您将不会通过之前的中间状态。

这是一个简单的例子(我在test上 checkout 并将master更改为与test相同的地方):

> git log --graph --oneline
* d97b1f8  (HEAD -> test) - tata (1 second ago)
* e680fb5  - toto (9 seconds ago)
* 4515586  (master) - bar (24 seconds ago)
* e241705  - foo (28 seconds ago)

> git branch -f master test

> git log --graph --oneline
* d97b1f8  (HEAD -> test, master) - tata (9 seconds ago)
* e680fb5  - toto (17 seconds ago)
* 4515586  - bar (32 seconds ago)
* e241705  - foo (36 seconds ago)

关于Git - 在 checkout 之前更新分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55533482/

相关文章:

django - 如何从公共(public)存储库中排除南方迁移?

c++ - 在 OSX 上从源构建 GIMP 2.10 在 "gimp-debug-tool-2.0"上失败

git - 将我在 gerrit 中所做的更改推送到 github 存储库

git - cherry-pick 与 rebase

git - 构建并运行一个 go 项目的分支

git - 在 git shell 中运行批处理文件

git - 完全取消一个rebase

git - 是否可以在一个 git 存储库中有多个 HEAD?

git - 使用 Dropbox 作为跨多台机器的 git 工作目录 - 提交不能完美同步

java - 从 Eclipse EGit 或 git 命令行提交时如何引用 TFS 工作项?