如何克隆特定版本的git存储库?

时间:2012-04-24 18:15:12

标签: git symfony

我正在使用symfony2,我希望备份我的供应商,以防github无法访问。

如何克隆特定版本的存储库?

我想借助vendor-file备份存储库。

语法是这样的:

[symfony]
    git=http://github.com/symfony/symfony.git
    version=v2.0.9

现在如何告诉git获取该特定版本?是否有终端命令,如:

git clone --mirror http://github.com/symfony/symfony.git --version=v2.0.9

先谢谢

3 个答案:

答案 0 :(得分:11)

我要告诉git使用这个确切的版本是:

git clone http://github.com/symfony/symfony.git
cd symfony

git checkout v2.0.9

一个班轮:

git clone http://github.com/symfony/symfony.git -b v2.0.9

答案 1 :(得分:2)

以下内容可以帮助您:

git clone --branch <branch> <repo>

如果您正在寻找特定版本,请首先从您的工作存储库中创建该版本的分支。像这样:

# In a local, working repository
git checkout -b v2.0.9-br v2.0.9
git push origin

# Now create your clone from v2.0.9-br

注意,我假设v2.0.9是版本(标记),而不是分支。如果它是一个分支,那么只需使用'--branch'选项进行克隆。

答案 2 :(得分:1)

您无法克隆仅指定版本号的存储库。您也无法通过仅指定提交哈希来克隆存储库。 (从Git的角度来看,这几乎是一样的)

实际上你唯一能做的就是通过指定深度(你要提交的提交数量)来实现浅层克隆:http://linux.die.net/man/1/git-clone

git clone --depth 1只会提取最后一次提交。

回到你的问题,如果你担心github无法访问,你应该在你的一台服务器上托管这些项目。