我想要完成的是:
我的开发机器上的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
在收到后的钩子里。)
这一切都可能吗?
答案 0 :(得分:1)
您考虑过git submodules了吗?这样,您可以将sub-root1
和sub-root2
定义为子模块。有关详细信息,请使用GitSubmoduleTutorial