我一直在从github克隆一些repos,即使我知道他们有分支/标签,但是一旦我将它们克隆到我的本地驱动器上就没有它们。奇怪。
我尝试列出标签(git标签)但没有出现......
我会查看.git / refs / tags /,这也是空的。
有问题的回购是:
http://github.com/jchris/hovercraft.git
http://github.com/apache/couchdb.git
任何想法?我真的需要特定的标签/分支,而不是主人的HEAD
答案 0 :(得分:3)
正如GitHub remotes中提到的那样:
运行
git clone URL
将自动创建一个新的子文件夹,将repo的内容提取到此子文件夹中,然后创建并签出默认分支(通常为“master”)。
如果遥控器上有其他分支,则需要创建一个本地分支才能工作,例如git checkout -b fix_stuff origin/fix_stuff
意味着所有分支都应该在那里,但是在你的回购的'remotes
'命名空间中
但是,您通常只有一个 remote tracking branch在克隆之后为您创建(默认值为“master
”)。
尝试使用git branch -a
或gitk --all
来检查您是否确实看到过它们。
至于标签(通常出现在refs/tags
namespace),let's hope it is not a repeat of this issue(2010年3月)。
对不起大家,我们对标签解析器有点麻烦......当缓存清除时,标签应该再次出现。
答案 1 :(得分:1)
克隆存储库后,只为您设置了主服务器。您可以使用以下命令在本地开始使用远程分支:
git checkout -t origin/1.2.x
创建一个名为1.2.x
的本地分支,用于“跟踪”(例如,推送和拉出)远程分支,然后切换到它。
如前所述,您可以看到所有分支(本地和远程):
git branch -a
标签应自动成为克隆仓库的一部分。您可以使用以下方法之一查看所有标记:
git tag # Show bare list of tags.
git tag -n # Show tags with first line of annotation specified at tag creation.
git tag -n4 # Show tags with 4 lines of annotation, if available.
希望有所帮助!