これを行うには、適切な方法で手を使うことができます。私はいくつかの枝があるTFVCスタイルのリポジトリを持っています。私は全体をgitに移動したい。私はgit tfs(https://github.com/git-tfs/git-tfs)を使ってローカルのgit reposにTFVCをエクスポートしていますが、履歴は複雑すぎるため、すべてのブランチを一度にエクスポートすることはできません。それ自体は問題ではありません。なぜなら、それと同時に、異なる分岐戦略に移行したいからです。個別のgit reposを1つにマージする
プラグインが許可するのは、履歴のサブセットを持つ個々のブランチをローカルgitリポジトリにエクスポートすることです。だから、私は "マスター"のためのローカルレポジションと、TFVCに保存されたすべてのリリースのためのレポジトリで終わります。
今私はこれらを単一の新しいgit repoにコミットしたいと思います。マスターは新しいマスターブランチに入り、リリースごとにブランチ「releases/release-xyz」を作成したいと思う。新しいリポジトリの正しいブランチに各ローカルリポジトリのすべてのコード+履歴をコミットするにはどうすればよいですか?遠隔地を追加して各支店を進めていくことが分かったが、ここで何も忘れていないことを確認したい。各ブランチのエクスポートされた履歴がそのまま残っている限り、ブランチ間のマージの履歴は気にしません。
ので、エクスポートされた構造:
folder A (master)
folder B (release-abc)
folder C (release-xyz)
とターゲット構造:
repo/master
repo/releases/release-abc
repo/releases/release-xyz
基本的には、新しいリポジトリを作成し、そのリポジトリをすべてのリポジトリにリモートとして追加します。次に、たとえばを使用して新しいレポにプッシュします。 'git push newrepo master:releases/release-abc' - マスターブランチを新しいリポジトリの' releases/release-abc'ブランチにプッシュします。 – poke
Jupはトリックをするようですが、私はそれをもっと複雑にしていました。 – Jasper
@poke共有してくれてありがとうございました。あなたのコメントを答えに移すことができました。コミュニティの他の人にも役立ちます。 –