を変更:gitの手術 - 私はこのような構造では、次の単一のリポジトリを持っているリポジトリを分割し、ディレクトリ構造
my-repo/
foo/
contents-of-foo
bar/
contents-of-bar
baz/
contents-of-baz
other-contents
私は、理想的に任意の歴史/タグを失うことなく、次のような構造を得ることを望む:
new-combined-repo/
contents-of-foo
bar/
contents-of-bar
baz/
contents-of-baz
と
my-other-repo
other-contents
私は続行する方法について少しこだわっています。私はこれを試してみた:前git mv
コマンドにsome-file
のすべての歴史を落とした
$ pushd path/to/my-repo/
$ git mv bar foo/
$ git mv baz foo/
$ git commit -m "Move bar and baz prior to repository extraction"
$ cd ..
$ git clone --no-hardlinks my-repo new-combined-repo
$ pushd new-combined-repo
$ git remote rm origin
$ git filter-branch --tag-name-filter cat --subdirectory-filter foo \
--prune-empty -- --all
$ git log --follow foo/bar/some-file
。
もっと良い提案ですか? TIA。