LoginSignup
1
1

More than 3 years have passed since last update.

BitbucketのMercurialのリポジトリをGitへ移行する

Last updated at Posted at 2019-11-13

BitbcuketのMercurialのサポートが2020年に終了するようなので移行しないといけなくなった

参考:bitbucket.orgでmercuialのサポート終了のお知らせ

概要:2020/2/1に新規でリポジトリ作成ができなくなり、2020/6/1にMercurialのリポジトリが削除されるらしい。

それで引き続きBitbucketを使い続けたい場合

これを機にBitbucketからGitHubへ移りたいという場合は別の記事を参照ください。ここではBitbucket内でのリポジトリの変換をする場合の手順について書きます。

主な手順は下記リンクの通り

Gitとその他のシステムの連携-Git-へ移行する

変換の概要

上記の手順はUbuntu16.04上で実行することになっているので、その環境を準備する。
変換手順はリポジトリ名を同じにしたいので、Bitbucket上のMercurialのリポジトリの名前を変更する。(sampleというリポジトリ名の場合、sample-Hgのようにする)
そして、変換後のGitのリポジトリを予め作成しておく。

  1. sample-Hgリポジトリ(Mercurial)からクローン
  2. ローカルでGitに変換
  3. sampleリポジトリ(Git)へpushする。

という手順とする。

手順通りにやってもうまくいかない

まず、取得するようになっている、fast-exportがエラーを吐いて動かないので、一旦説明通りにcloneした後、下記コマンドで動くrevを取得

git checkout tags/v180317

次に手順通りだと、authorsファイルが作成され、Gitの記述方に沿った書き方でない場合、変換する必要がある。とあるがそのまま書いたのではエラーになるため、下記の書き方にする必要がある。

(誤) bob=bob Jones <bob@company.com>
(正) "bob"="bob Jones <bob@company.com>"

つまり、ダブルクォートで左右の文字列を囲むようにということのようだ。

上記の点を踏まえると、Bitbucket内でプロジェクトの変換ができた。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1