一个git存储库,基于稀疏检出的条件根

时间:2014-10-08 11:12:28

标签: git

我想要完成的是:

我的开发机器上的

1 - 一个存储库和github(即一个远程)

2 - 在我的服务器上,我希望存储库的根文件夹包含存储库子目录的一个中包含的源代码

假设这个存储库结构(在我的开发机器上)

/root # the actual git repository
  ./git  
  /sub-root1 # contains source code for sub-root1
    sub-file1
  /sub-root2 # contains source code for sub-root2
    sub-file2

现在,在我的服务器上,我想运行

cd /var/sub-root1 && git pull git@github.com/root-repository.git 

会收到sub-root1的源代码(以及sub-root2的副词),即以下结构

/sub-root1 # system folder
  ./git
  sub-file1

我已设法通过稀疏结帐获取以下结构:

/sub-root1 # system folder
  /.git
  /sub-root1 # git folder
    sub-file1

我意识到将sub-root文件夹作为根文件夹移动意味着使存储库变脏,但我希望有一些优雅的处理方式(我当前最好的想法是使用mv在收到后的钩子里。)

这一切都可能吗?

1 个答案:

答案 0 :(得分:1)

您考虑过git submodules了吗?这样,您可以将sub-root1sub-root2定义为子模块。有关详细信息,请使用GitSubmoduleTutorial