- 1個目のエラー、catalinaのgitはsvn使えない
- 2個目のエラー、Core.pmが見つからないエラー(よくわからん)
- 3個目のエラー、SVNサーバに到達できない「Unable to connect to a repository」
- 4個目のエラー、 「Author: (no author) not defined in ../members.txt file」
- 5個目のエラー、Error from SVN, (175009): Malformed network data: The XML response contains invalid XML: Malformed XML: no element found at line 1
- 6個目のエラー、trunkしかクローンされず、branches、tagsがコピーされない
- 結局、最終的にうまく行った手順
1個目のエラー、catalinaのgitはsvn使えない
最初に出たやつ
git: 'svn' is not a git command. See 'git --help'.
The most similar commands are
fsck mv
show
$ brew install git
$ brew install subversion
$ brew install perl
~/.bashrcに以下追加。(ワテの場合はbashrcが読み込んでるlocalrcに追加した)
PATH=/usr/local/git/bin:$PATH
export PATH
source ~/.bashrc
Mac(Catalina)でgit-svnを使えるようにする – hatena
2個目のエラー、Core.pmが見つからないエラー(よくわからん)
Can't locate SVN/Core.pm in @INC (you may need to install the SVN::Core module) (@INC contains: /usr/local/Cellar/git/2.29.2/share/perl5 /Applications/Xcode.app/Contents/Developer/Library/Perl/5.18/darwin-thread-multi-2level /Library/Developer/CommandLineTools/Library/Perl/5.18/darwin-thread-multi-2level /Library/Perl/5.18/darwin-thread-multi-2level /Library/Perl/5.18 /Network/Library/Perl/5.18/darwin-thread-multi-2level /Network/Library/Perl/5.18 /Library/Perl/Updates/5.18.4 /System/Library/Perl/5.18/darwin-thread-multi-2level /System/Library/Perl/5.18 /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level /System/Library/Perl/Extras/5.18 .) at /usr/local/Cellar/git/2.29.2/share/perl5/Git/SVN/Utils.pm line 6.
BEGIN failed--compilation aborted at /usr/local/Cellar/git/2.29.2/share/perl5/Git/SVN/Utils.pm line 6.
Compilation failed in require at /usr/local/Cellar/git/2.29.2/share/perl5/Git/SVN.pm line 25.
BEGIN failed--compilation aborted at /usr/local/Cellar/git/2.29.2/share/perl5/Git/SVN.pm line 32.
Compilation failed in require at /usr/local/Cellar/git/2.29.2/libexec/git-core/git-svn line 23.
BEGIN failed--compilation aborted at /usr/local/Cellar/git/2.29.2/libexec/git-core/git-svn line 23.
/usr/local/opt/git/libexec/git-core/git-svn を開いて1行目を #!/usr/local/bin/perl に変更すると解消された。こんなんでいいんかな…。
Mac で git svn すると Can’t locate SVN/Core.pm エラー
3個目のエラー、SVNサーバに到達できない「Unable to connect to a repository」
Can't create session: Unable to connect to a repository at URL 'http://path/': Error running context: The server unexpectedly closed the connection. at /usr/local/Cellar/git/2.29.2/share/perl5/Git/SVN.pm line 310.
SVNサーバに到達できるVPNに参加してないだけやった。
4個目のエラー、 「Author: (no author) not defined in ../members.txt file」
--authors-file=../members.txt
Author: (no author) not defined in ../members.txt file
っていうメッセージが出て、cloneされない。
↓
members.txtに、以下を追記した。
(no author) = no_author <no_author@no_author>
参考(thx)
5個目のエラー、Error from SVN, (175009): Malformed network data: The XML response contains invalid XML: Malformed XML: no element found at line 1
↓
--log-window-size=
オプションを追加して実行。
参考(thx)
6個目のエラー、trunkしかクローンされず、branches、tagsがコピーされない
$ git branch
* master
$
↓
--no-minimize-url
オプションを付けてみる。
git-svn clone checkouts wrong repo?
ついでに
--prefix=svn/
もつけてみた。
- branchの名前がorigin だったのが、
- svn/origin になるオプション。
↓
変わらず。
↓
て思ったら、リモートリポジトリとしてはコピーできている。そういうもんらしい。
$ git branch -r
svn/banner_test
svn/tags/20050725
svn/trunk
$
↓
以下を参考に実施。
SVNからGitへの移行 ~ SVNからGitLab CE(Self-hosted)への移行ステップガイド
↓
macだとうまく動かんので一旦断念(forコマンドがBSDのだから?)
結局、最終的にうまく行った手順
git svn clone
git svn clone --log-window-size=4000 --trunk=/trunk --branches=/branch --tags=/tags --authors-file=members.txt --no-metadata --username=kuzuriman http://アドレス/path/path 保存先ローカルディレクトリ
gitコマンドで実施
gitリポジトリ内に入る
↓
タグ情報をgitの形式に変換する。(下記コマンドそのままコピペでOK)
git for-each-ref refs/remotes/tags | cut -d / -f 4- | grep -v @ | while read tagname; do git tag "$tagname" "tags/$tagname"; git branch -r -d "tags/$tagname"; done
↓
ブランチ情報をgitの形式に変換する。(下記コマンドそのままコピペでOK)
git for-each-ref refs/remotes | cut -d / -f 3- | grep -v @ | while read branchname; do git branch "$branchname" "refs/remotes/$branchname"; git branch -r -d "$branchname"; done
↓
trunk ブランチを削除する
git branch -d trunk
error: branch 'trunk' not found.
って怒られた。
↓
$ git branch -d origin/trunk
でやったら削除できた。
(一応怖かったので、svnサーバにアクセスできない環境で実施した。(VPN切ってから実施した))
コメント