mac Catalinaで git-svn 使えなかったのの解決

公開日: : 最終更新日:2021/04/22 mac

git logosvn logo

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 <[email protected]_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切ってから実施した))

 

 

Googleアドセンスレスポンシブ

関連記事

iterm2のアイコン

macのiTerm2でbashのメタキーをaltで使えるようにする

bashのショートカットキーがあって、コマンドライン上で、カーソル移動するときに便利。 ただ、

記事を読む

no image

iTerm2の Broken pipe でセッションが切れるのを解決

iTerm2で、SSHでリモートの機器につなげてちょっと放置するとBroken pipeのメ

記事を読む

macとなんかかわいいやつ

macでiPhoneのシミュレータからSafariでスクショ取るまで

chromeでよければ「検証」からエミュレータを起動すれば良いですが、一般の動作環境をチェックす

記事を読む

zip icon

mac で、フォルダ内のzipファイルを一括回答コマンド unzipコマンド シングルクォーテーション

unzip コマンド使う。 macに限らず、Linuxでも同じはず。CentOS7にデフォル

記事を読む

no image

アップル Mini DisplayPort to DVI アダプタ購入時の注意点

今更DVI。。。なのですが、書きます。 型番だとA1305とかMB570のやつですね。

記事を読む

macとなんかかわいいやつ

Karabiner-Elements USキーボード ⌘でかな

リンク qiita

記事を読む

macとなんかかわいいやつ

karabiner に ctrl+n と pで上下矢印キーを割り当てたった

スクショ   上図の一番下の項目。 「+ Add rule」 から公開され

記事を読む

ワードプレスのロゴ

macで、WordPressで使う翻訳ファイルpoをmoに変換するコマンド

msgfmt xxx.po -o xxx.mo 参考にしたサイト様

記事を読む

macとなんかかわいいやつ

mac Finder で、隠しファイルを表示するのは「⌘⇧.」

  キーボード ショートカットは、 command + shift + .(コ

記事を読む

拒否-logo

nuro光特典のカスペルスキーmac版がダウンロードできない

nuro光でカスペルスキー無料で使える特典がついてる カスペルスキーセキュリティは、普通は有料

記事を読む

Googleアドセンスレスポンシブ

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

PAGE TOP ↑