2

我有一些文件存在于 Repo 1 的目录中。假设它是一个视频播放功能。与此功能相关的所有文件均未在此目录中创建。有时开发人员会意识到这种共性并将所有文件移动到一个公共位置。

现在我们有一个核心库,我们希望所有这些文件都存在于其中,以便其他项目可以重用它们。我已成功使用以下命令将文件放入另一个存储库,但在将文件从 Repo 1 移动到公共目录之前,它缺少文件的历史记录。

我如何才能做到这一点,以使文件的整个历史记录都包含在核心库中,而不管它在 Repo 1 中被 git mv'd 多少次?

cp -R  repo-where-feature-exists/ video-filtered-repo
cd video-filtered-branch
git remote rm origin 
git filter-branch --subdirectory-filter src/main/resources/static/video-poc/js/video/ -- --all 
rm -rf src/
mkdir -p component-library/src/main/resources/components/video
git mv -k * component-library/src/main/resources/components/video/
git commit -m "Moving files from where they were in the original location into the core location"


Now go to core…
cd /software/dp/core
git remote add video-feature /software/dp/video-filtered-repo/
git pull video-feature integration
4

1 回答 1

0

请参阅有关“将子路径拆分为新存储库”的这些 GitHub 帮助说明

于 2013-02-01T10:43:53.013 回答