将Git项目中的子目录推送到其他Git项目

将Git项目中的子目录推送到其他Git项目,git,github,Git,Github,在我的项目构建脚本中(即在我们的私有Git中),它将所有样本复制到一个工作文件夹中。我想将该文件夹推送到我们的一个公共Git项目中。我不需要它,我只需要将所有文件(包括子目录)推送到一个不同的Git项目 有什么方法可以做到这一点吗?如果您真的只想要子文件夹,而主项目没有意识到所述子文件夹被推送,您可以: 在GitHub上初始化新的Git存储库 在本地克隆它 将该子文件夹的文件添加到本地克隆、提交和推送 诀窍是,在新的本地存储库中,将其他项目中的当前文件夹指定为工作树 cd /path/to/

在我的项目构建脚本中(即在我们的私有Git中),它将所有样本复制到一个工作文件夹中。我想将该文件夹推送到我们的一个公共Git项目中。我不需要它,我只需要将所有文件(包括子目录)推送到一个不同的Git项目


有什么方法可以做到这一点吗?

如果您真的只想要子文件夹,而主项目没有意识到所述子文件夹被推送,您可以:

  • 在GitHub上初始化新的Git存储库
  • 在本地克隆它
  • 将该子文件夹的文件添加到本地克隆、提交和推送
诀窍是,在新的本地存储库中,将其他项目中的当前文件夹指定为工作树

cd /path/to/local/new/repo
git --work-tree=/path/to/main/project/subfolder add .
git commit -m "Add subfolder"
git push -u origin master

如果您确实只想要子文件夹,而不需要主项目来实现所述子文件夹被推送,您可以:

  • 在GitHub上初始化新的Git存储库
  • 在本地克隆它
  • 将该子文件夹的文件添加到本地克隆、提交和推送
诀窍是,在新的本地存储库中,将其他项目中的当前文件夹指定为工作树

cd /path/to/local/new/repo
git --work-tree=/path/to/main/project/subfolder add .
git commit -m "Add subfolder"
git push -u origin master

将其作为子模块,或者将所有文件复制到单独git存储库中的单独文件夹中,然后提交并推送到那里。使用
git subtree push-P
将子目录的历史记录复制到单独的存储库中。从那里使用
git子树拉入目标回购。将目标repo推回GitHub。将其作为子模块,或将所有文件复制到单独git存储库中的单独文件夹中,然后提交并推送到那里。使用
git subtree Push-P
将子目录的历史记录复制到单独的存储库中。从那里使用
git子树拉入目标回购。将目标回购推回到GitHub。