Bitbucket Mercurialリポジトリ(Hgリポジトリ)をGitリポジトリに変換するにはどうすればよいですか?ブランチとコミット履歴を保持したい。
私は https://github.com/frej/fast-export を見つけました。これはMercurialブランチをGitブランチに正しく移行します(Herg-gitはMercurialでのみ機能しますブックマーク)。
高速エクスポートはローカル(のコピー)リポジトリで機能するため、純粋にオンラインではありません。 Fast-exportには、新しいローカルGitリポジトリを作成して入力する方法の説明があります。
私の場合、Mercurialに複数のブランチヘッドを残していたため、次のエラーが発生しました。
Error: repository has at least one unnamed head: hg r493
「hg strip 493」を使用するか、これらのヘッドを取り除くためにマージを行うことができます。
また、READMEで説明されているように、「著者ファイル」と-Aスイッチを使用してフォーマットが正しくない著者フィールドをマップするために、一部のコミットの著者フィールドを修正する必要がありました。
その後、高速エクスポートはリポジトリを受け入れました。
また、Bitbucket Webインターフェイスを介して新しいBitbucketリポジトリを作成する必要があります。
次に、Bitbucketにプッシュします。この例では、構成済みのSSHを使用してセットアップします。
git remote add Origin [email protected]:<user_name>/<repo_name>
git Push --all Origin