通过Gerrit Web UI,我从提交链中的一个旧提交创建了一个分支
以前版本的代码存储库存在于本地。
我发出git pull
命令来更新我的本地仓库。
我尝试运行git branch -a
,这个新创建的分支没有出现。
但是,如果我在其他地方克隆此repo,则所有分支都会根据需要显示。
任何人都可以对此有所了解吗?
更新
我尝试按this question中的说明运行git ls-remote
。这将显示新创建的头部。但是,git branch -a
未显示存储库的更新状态。
答案 0 :(得分:2)
git pull <remote> or git pull
命令只会更新您的本地仓库,但是当您运行git branch
命令时,从Gerrit创建的分支将不会显示。您需要运行以下命令:
$git check -b branch_name --track origin/branch_name
其中branch_name
是在Gerrit中创建的分支名称。
答案 1 :(得分:0)
好像是一个错误。事实确实如此,但实际上您可以执行git checkout new-branch
,然后在执行git branch -a
时显示分支
这看起来有点奇怪,因为你看不到分支,但你可以检查分支。我假设您在[new branch] test-branch -> origin->test-branch
git pull
答案 2 :(得分:0)
我仍然不明白为什么会这样。
然而,一种方法是clone
其他地方的回购......这解决了我的问题。
如果出于某种原因,clone
不是您的选项,请删除远程引用并将其重新添加回来,如下所示:
git remote -v
#will display list of all...
<remote name> <remote url/ or ssh alias(if configured)>
<remote name> <remote url/ or ssh alias(if configured)>
.....
git remote rm <remote name>
# add the same remote again
git remote add <remote name> <remote url or ssh alias(if already configured)>
# now pull
git pull <remote name>
答案 3 :(得分:0)
尝试在其他命令之前使用此命令,分支将显示:
git fetch origin <branch_name>