有没有可能将存储库(例如CakePHP1.x @ http://github.com/cakephp/cakephp1x)及其主分支和子分支检出到子文件夹中?
例如,我想要的文件夹结构如下:
cakephp1.x
|------ 1.2
|------ 1.3
|------ master
我知道你可以使用git checkout -t origin/branch从克隆的存储库中切换分支,但我想知道是否有一种方法可以在不必重复克隆存储库并重命名的情况下完成上述操作。
有没有可能将存储库(例如CakePHP1.x @ http://github.com/cakephp/cakephp1x)及其主分支和子分支检出到子文件夹中?
例如,我想要的文件夹结构如下:
cakephp1.x
|------ 1.2
|------ 1.3
|------ master
我知道你可以使用git checkout -t origin/branch从克隆的存储库中切换分支,但我想知道是否有一种方法可以在不必重复克隆存储库并重命名的情况下完成上述操作。
您可以尝试以下方法:
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分支上执行git pull
,这将从主分支拉取(因为它们的跟踪分支)。或者,您可以将github添加为分支存储库的新远程,并直接拉取。Git就像Perl-有多种方法可以做到! - Greg Hewgill