【问题标题】:Remote branch not show in terminal?远程分支不在终端中显示?
【发布时间】:2020-02-26 10:39:52
【问题描述】:

我的任务是向 gitlab 中的其他远程分支(不是 master)提交一些东西。我在 gitlab 存储库的分支部分创建了另一个活动远程分支名称为 Dennis(我想提交给它的远程分支)。但是,它没有在终端中显示 remotes/origin/Dennis 分支。我如何在 git 分支 -a 状态中有遥控器/来源/丹尼斯?否则,我无法将文件提交到 remotes/origin/Dennis。

git branch-a 状态显示在我的 macbook 终端中:

macbook$ git branch -a
* Dennis
  master
  remotes/origin/HEAD -> origin/master
  remotes/origin/master

【问题讨论】:

  • 没有说明,但我假设您已经获取了,不是吗?
  • 尚未获取。抱歉,我是刚接触 git 的新手
  • 嗯.... 获取后,您将看到远程分支出现。 git fetch --all
  • 我应该解释一下,我猜……问题是你有一个本地仓库……而且 gitlab 上还有另一个仓库。所以......当 gitlab repo 上的事情发生变化时,除非您要求本地 repo 从远程获取信息,否则您不会看到这些更改反映(至少在看到远程分支更改方面)。当您运行 git fetch 或运行 git pull 时会发生这种情况。
  • @eftshift0 ic,感谢您提供的信息。但实际上为什么要运行 git fetch --all 命令?

标签: git gitlab git-branch


【解决方案1】:

git fetch --prune

除了@VonC 的回答,我还想在 fetch 命令中添加 --prune 标志,以便它可以删除已从列表中删除的远程分支。

【讨论】:

    【解决方案2】:

    一个简单的git fetch(不需要--all)就足够了。

    检查git config --local -l 的输出(在您的存储库中完成)。
    如果你看到refspec

    remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
    

    这意味着一次 fetch 将获取 所有 个远程分支。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-29
      • 2019-02-10
      • 2021-12-05
      • 2018-11-05
      • 2023-04-10
      • 2016-02-16
      • 2012-09-01
      • 1970-01-01
      相关资源
      最近更新 更多