2017-11-17 18 views
-1

私はsvn repoからbitbucket repoへの移行プロセスを行っています。ローカルのgitリポジトリからビットバケットリポジトリへ

現時点では、私はすべてのsvn repoをローカルgit repoとして持っています。私はローカルのgitリポジトリにすべてのsvnリポジトリ履歴のコミットとユーザーのログを表示できます。次のステップで

は、いくつかの時間後にコマンド

git push -u origin master 

で遠隔ビットバケットレポにローカルGitのレポをアップロードしようと、一致していないユーザーとの誤差があります。

Please ensure that the commit contains the correct Committer EMail 

それは プッシュする前にbitbucketレポ上のユーザーなど、すべてのコミッタのユーザーを作成必須だが、すべてのユーザーがJIRAにリンクされています。

これは巨大なsvnレポです。古いコミッターがいて、今は会社では動作しません。彼らはjiraユーザーではありません。どうすればいいですか?おかげさまで

+0

私は気分があります[このスレッド](https://stackoverflow.com/questions/28425670/git-error-expected-committer-email-but-found-karanxyz-com/28425852?noredirect=1#comment45194115_28425852)ソリューションは実際には利用可能ではありませんが、関連している可能性があります。 bitbucketのログを表示して問題を追跡できますか? –

+0

bitbucketリポジトリの**設定/フック**メニューの**別のコミットチェッカー**が有効になっている問題を解決しました。 – LennyBaxter

答えて

0

コミッタユーザはbitbucketユーザまたはjiraにリンクされていません。それは、メールの形式に起因するmailyが間違っています。

コミッターのメールをチェックするには(複数のコミッターがある場合、またはgit log)、あなたはgit log -1を使用することができ、コミットは、以下のような形式で表示されます:

Author: user <[email protected]> 
Date: Tue Sep 26 02:58:34 2017 +0000 

Commit message 

あなたはgit svn cloneでのgitにSVN移行した場合、コミッターの電子メールアドレスは通常、上記のように正しくインポートされません。

以下のようにして、すべてのコミットのためのコミッターのメールアドレスを変更することができます:それはコミットの歴史の中でメールアドレスを交換するためには数分かかります

git filter-branch --commit-filter ' 
     if [ "$GIT_AUTHOR_EMAIL" = "current email" ]; 
     then 
       GIT_AUTHOR_EMAIL="new email"; 
       git commit-tree "[email protected]"; 
     else 
       git commit-tree "[email protected]"; 
     fi' HEAD 

。その後、もう一度押すことができます。

関連する問題