【问题标题】:git pull works only for master branchgit pull 仅适用于 master 分支
【发布时间】:2012-11-28 21:55:22
【问题描述】:

从 git 服务器 LAN 内的计算机从任何存储库中提取任何分支都可以。
但是,在任何远程计算机上(与 git 服务器不在同一个 LAN 上),从任何存储库中拉出 master 都可以,但 拉出任何其他分支会挂起

环境:
- Git 服务器在 ubuntu 上运行非常糟糕
- 我正在使用 msysgit 和命令行或 tortoisegit 从 Windows 中提取
- 使用的网址格式为:ssh://git@[my.domain]/[proj]/[repo.git]

我知道gitorious does not support branch specific permissions。此外,在 LAN 中,所有分支机构的工作都必须表明某些事情......这可能是什么?!

更新:
我怀疑我要拉的分支不存在,所以我尝试推它。结果如下:

git.exe push --progress  "origin" other_branch

To ssh://git@my.domain/proj/repo.git
! [rejected]        other_branch -> other_branch (non-fast-forward)
error: failed to push some refs to 'ssh://git@my.domain/proj/repo.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Merge the remote changes (e.g. 'git pull')
hint: before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

有趣的不挂...

【问题讨论】:

  • 只是为了消除明显的(我并不是要居高临下),Git服务器上是否存在其他分支?
  • @ap :) 是的,他们有,请参阅问题更新
  • git fetch origin 的输出是什么?
  • @AndrewMyers fetch 也挂起。我可能会补充一点,这是在新服务器上新安装的 gitorious。 master 分支工作的事实表明它很可能配置正确。

标签: git git-branch git-pull gitorious


【解决方案1】:

首先检查分支是否存在于gitorious webview中,或者在你服务器的文件系统中。

如果存在,请尝试 $git pull --rebase origin other_branch 然后 $git push origin other_branch

【讨论】:

    猜你喜欢
    • 2013-12-04
    • 2014-09-17
    • 2011-02-22
    • 2020-11-05
    • 2016-03-15
    • 2020-07-27
    • 2013-03-14
    • 2022-01-15
    相关资源
    最近更新 更多