5

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

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

我想在供应商文件的帮助下备份存储库。

语法是这样的:

[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

提前致谢

4

3 回答 3

15

我会告诉 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
于 2012-04-24T18:41:45.553 回答
3

以下内容可能会让您到达那里:

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”选项进行克隆。

于 2012-04-24T22:49:48.063 回答
1

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

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

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

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

于 2012-04-24T18:32:30.260 回答