我有一个项目,其中包含多个不同目录中的组件,并希望将这些文件夹的内容视为单个git存储库。
例如,我有类似
的东西
- 甲
- 一个
- B'/ LI>
和其他地方
- 1
- I
- 二
并希望将它们合并到一个git存储库中:
- 回购
- A ..
- 1 ..
我可以用git做这个吗?
答案 0 :(得分:5)
答案 1 :(得分:0)
如果您考虑一下,大多数源代码分发都是这样构建的。也就是说,repo布局不反映部署布局。有在源代码src
,这结束了在可被编译build
,进而那些伪影像某处安装/usr/bin
。可能有一本手册,由不同的工具链组装,并安装在目标系统的其他地方。可能有一个网站,它以完全不同的方式部署到不同的目标系统等。为了管理所有这些,有一套构建和部署脚本,其中一些(愚蠢地)并不总是跟踪与系统的其余部分。
但是,除了作为心理模型之外,如果找不到适合您特定场景的部署工具,这一点都没有多大帮助。
如果您需要构建自己的部署脚本,可以从相当简单的事情开始。由于您提供的背景有限,听起来您可能不需要更多
while read repo path; do
cd "$path"
mkdir "$repo"
cd "$repo"
git init
git pull /path/to/repo/"$repo"
done<<____HERE
A /var/www
1 /srv
____HERE
答案 2 :(得分:0)
如果'A'和'1'已经拥有自己的git存储库,并且如果你想继续使用这些存储库,那么你唯一的选择是在'repo'中创建一个git存储库,然后添加'A'和'1'作为git子模块。
如果您不关心'A'和'1'中现有的git存储库,那么只需在'repo'中创建一个新的git存储库,并添加'A'和'1'的所有内容。