我向分支推送了大约 200 个提交master。
在另一台服务器上,分支A已签出,但我需要master在这里签出。
我可以git checkout master立即执行git pull。
但随后旧状态将一直存在,直到git pull执行更新分支为止。
我可以先更新一个分支然后再查看吗?
运行后git fetch,您可以强制master更改为位置origin/master:
git branch -f master origin/master
Run Code Online (Sandbox Code Playgroud)
然后你可以检查一下:
git checkout master
Run Code Online (Sandbox Code Playgroud)
它将处于 的状态origin/master,并且您不会经过之前的中间状态。
这是一个简短的示例(我已签出test并更改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)
Run Code Online (Sandbox Code Playgroud)