次のソース構造があります。
/dir1
file1
file2
file3
dir1
リポジトリ自体がフォルダーのようになる可能性があるため、不要なので、git リポジトリを次のようにします。
file1
file2
file3
これを達成するにはどうすればよいですか?
次のソース構造があります。
/dir1
file1
file2
file3
dir1
リポジトリ自体がフォルダーのようになる可能性があるため、不要なので、git リポジトリを次のようにします。
file1
file2
file3
これを達成するにはどうすればよいですか?
免責事項: これは履歴を書き換え、リポジトリを既にクローンした人にとっては PITA になります。公開された履歴でそれを行うべきではありません。
filter-branch
つまり、Gitのコマンドを使用して、すべてのツリーを書き換えることができるはずです。使用する前に、すべての意味を理解してください (マンページを読んで、バックアップを取ってください)。
git filter-branch \
--subdirectory-filter dir1 \
--tag-name-filter cat \
-- --all
注意。このコマンドは、グラフトを永続化し、参照を置き換えます。