【问题标题】:Git pull another branch and checkoutGit拉另一个分支并结帐
【发布时间】:2021-11-05 00:34:55
【问题描述】:

我经常需要检查另一个分支的最新版本:

git checkout anotherbranch
git pull

如何在不先检查另一个分支的过时版本的情况下做到这一点?

例如:

给定

  1. 有分支master和feature1
  2. 每个分支都有一个名为 origin 和同名远程分支的远程分支。
  3. 没有本地未推送的提交

时间:

  1. 我在 feature1 上,有人将 PR 合并到 master 中

那么:

如何查看最新版本的master?

是否遵循这个技巧?

git fetch origin master
git checkout master

【问题讨论】:

标签: git


【解决方案1】:

我处理这种一般情况的一种方法是使用远程跟踪分支origin/master,而不是使用本地master 分支。假设您想将最新的远程master 合并到来自feature1 分支的feature1。您可以通过以下方式实现:

# from feature1
git fetch origin
git merge origin/master

上面的 git fetch 技巧将更新您的远程跟踪分支的所有,这样本地的 origin/master 现在将反映 Git 存储库中的任何最新更改。然后,您可以将origin/master 用于您可能有的任何目的。

【讨论】:

    【解决方案2】:

    如何在不先检查另一个分支的过时版本的情况下做到这一点?

    git fetch origin anotherbranch:anotherbranch
    git checkout anotherbranch
    

    如何查看最新版本的master?

    git fetch origin master:master
    git checkout master
    

    【讨论】:

    • 如果我使用git fetch origin master 而不是git fetch origin master:master 会怎样?
    • 最好解释一下神奇的“x:x”符号在这里做了什么。我猜这是故意的,并且在某种程度上与“git fetch origin anotherbranch”不同?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-12
    • 1970-01-01
    • 2014-02-12
    • 1970-01-01
    相关资源
    最近更新 更多