我试图找出如何下载 Git 存储库的特定标记 - 它是当前版本背后的一个版本。
我在 git 网页上看到了以前版本的标签,对象名称为长十六进制数。
但根据网站版本名称为 “ Tagged release 1.1.5
”。
我尝试了这样的命令(名称已更改):
git clone http://git.abc.net/git/abc.git my_abc
我确实得到了一些东西 - 一个目录,一堆子目录等。
如果它是整个存储库,我如何获得我正在寻找的版本?如果没有,我该如何下载该特定版本?
$ git clone
将为您提供整个存储库。
克隆之后,您可以使用$ git tag -l
列出$ git tag -l
,然后签出特定标记:
$ git checkout tags/<tag_name>
更好的是,结帐并创建一个分支(否则您将在以标记的修订号命名的分支上):
$ git checkout tags/<tag_name> -b <branch_name>
git clone --branch my_abc http://git.abc.net/git/abc.git
将克隆回购并留下您感兴趣的标签。
1.8.0 git clone状态的文档。
--branch 还可以在生成的存储库中的标记处获取标记并分离 HEAD。
我不是 git 专家,但我认为这应该有效:
git clone http://git.abc.net/git/abc.git
cd abc
git checkout my_abc
要么
git clone http://git.abc.net/git/abc.git
cd abc
git checkout -b new_branch my_abc
第二个变体基于标记建立新分支,这样可以避免 “分离的 HEAD”。 (git-checkout 手册)
每个 git repo 都包含整个修订历史记录,因此克隆 repo 可以让您访问最新的提交,以及之前的所有提交,包括您正在寻找的标记。