将git仓库的分支检出到子文件夹中?

4

有没有可能将存储库(例如CakePHP1.x @ http://github.com/cakephp/cakephp1x)及其主分支和子分支检出到子文件夹中?

例如,我想要的文件夹结构如下:

cakephp1.x

|------ 1.2

|------ 1.3

|------ master

我知道你可以使用git checkout -t origin/branch从克隆的存储库中切换分支,但我想知道是否有一种方法可以在不必重复克隆存储库并重命名的情况下完成上述操作。

3个回答

7
您可以像这样做:

您可以尝试以下方法:

mkdir cakephp
cd cakephp
git clone git://github.com/cakephp/cakephp1x.git master
cd master
git checkout -t origin/1.2
git checkout -t origin/1.3
cd ..
git clone master 1.2
git clone master 1.3
cd 1.2
git checkout -t origin/1.2

由于它们将使用硬链接共享大部分存储库数据,因此两个本地git clone操作将非常快速。


谢谢,这正是我想要实现的。不过我在想 - 如果我在主分支上执行 'git pull',这很好用 - 那么如何拉取 1.2 / 1.3 分支的更新呢? - BeesonBison
在主分支上执行git pull之后,再在1.2/1.3分支上执行git pull,这将从主分支拉取(因为它们的跟踪分支)。或者,您可以将github添加为分支存储库的新远程,并直接拉取。Git就像Perl-有多种方法可以做到! - Greg Hewgill

0

克隆代码库并不是什么大不了的事情。如果在本地文件系统中进行,大多数代码库内容会通过硬链接进行克隆。


0

这与this有什么关联?!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接