- 我有一个从git.drupal.org克隆的裸仓库。
- 我已经从这个裸仓库克隆到不同的网站上。
- 从每个网站上,我都会向裸仓库推送一个特定于该网站的分支。
例如,如果我有foo.org和bar.org,那么我的裸仓库就有Drupal的分支以及名为foo和bar的两个分支。
我的想法是利用git的硬链接来节省本地克隆的磁盘空间。我认为我会让裸仓库从git.drupal.org抓取更新,并将更改拉到我的本地副本foo和bar中。然后当更新出现时,这将变得很容易。
bare-repo$ git fetch >/dev/null ; git branch -a
* 7.x
foo
bar
remotes/origin/7.x
remotes/origin/8.x
foo和bar最初在分支7.x上开始,但我想将它们更新到7.8版本,例如通过 git rebase 7.8
,但这种方法失败了:
fatal: Needed a single revision
invalid upstream 7.8
foo和bar无法“看到”裸仓库的远程。我该怎么办?
fatal: Needed a single revision invalid upstream origin/7.8
- artfulrobot7.8
在origin
中不存在作为一个分支,那么这个错误信息是可以预料的。也许7.8
是'origin
'仓库中的一个标签。在这种情况下,您需要先显式地获取这些标签:git fetch --tags origin
。然后再进行变基操作应该就可以了。 - VonC