Repo 1 のディレクトリにいくつかのファイルが存在します。それがビデオ再生機能だとしましょう。この機能に関連するすべてのファイルがこのディレクトリに作成されたわけではありません。開発者はその共通性に気づき、すべてのファイルを共通の場所に移動することがあります。
これで、他のプロジェクトで再利用できるように、これらすべてのファイルを保存するコア ライブラリができました。次のコマンドを使用してファイルを他のリポジトリに正常に取得しましたが、Repo 1 で共通ディレクトリに移動される前のファイルの履歴がありません。
Repo 1 で git mv された回数に関係なく、ファイルの履歴全体がコア ライブラリに含まれるようにするにはどうすればよいですか?
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