我刚刚建立了本地git仓库,并根据Google的“ Cloud Source Repository”将其复制到远程仓库。除未复制标签外,这通常可以很好地工作。我有一些旧的Google存储库,以相同的方式构建(据我所记得),它们确实具有标签。所以我不确定发生了什么。
该过程是为了:
git tag -a V1.0.0 -m "The initial working version"
处添加一些标签,git push --all google
。除了远程回购中没有标签之外,所有这些似乎都工作正常。 git tags命令的输出如下所示,我可以在gitk GUI中看到这些标签。因此,问题不在于本地存储库。这些标签还没有进入Google的回购协议。
$ git tag
V1.0.0
V1.0.1
V1.1.0
V2.0.0
推送输出如下:没有错误。
git push --all google
Counting objects: 25, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (20/20), done.
Writing objects: 100% (25/25), 5.03 KiB | 2.51 MiB/s, done.
Total 25 (delta 7), reused 0 (delta 0)
remote: Resolving deltas: 100% (7/7)
To https://source.developers.google.com/p/<REDACTED>/r/git_test
* [new branch] master -> master
感谢John,指出了这一点,但是这似乎是预期的行为。在git-scm.com/book中,“默认情况下,git push命令不会将标签传输到远程服务器。”
因此您需要明确:在我的情况下为git push --tags google
,在其他情况下为git push origin --tags
。