プロが教える店舗&オフィスのセキュリティ対策術

Subversion+TortoiceSVNでソースコードの管理を行っているのですが、
つい最近、両ソフトをバージョンアップ(svn 1.6.xx⇛1.6.16?)したときから
ファイルのロールバックが出来なくなってしまいました。

ロールバックしようとするとチェックアウト画面のリポジトリのURLで
日本語のパス&ファイル名がURLエンコードされた状態になっており、
チェックアウトできません。

解決方法はありませんでしょうか?

よろしくおねがいします。

「Subversionで日本語ファイル名が」の質問画像

A 回答 (3件)

>しかし、リポジトリURLは未だにURLエンコード状態…。


>こちらの解決方法はご存知ありませんか?

指定し直す…くらいですかね。
httpプロトコル、svnプロトコルではURLエンコードされていてもとりあえず問題ないですから。
とはいえ、チェックアウトすると作業コピーの名前が酷いことになりました。
リポジトリURLの「...」ボタンでブラウザ起動して再指定することで直りましたが。
# file:の時のようにファイルシステムからパスを指定する必要がない(というか上位ディレクトリに戻れる階層が多くない)ので、それほど手間ではないですし。
    • good
    • 1
この回答へのお礼

ありがとうございました。
再指定で運用していきたいと思います。

お礼日時:2011/04/04 13:36

>「エラー 'file://サーバー名/SVN/以降URLエンコードされた文字列」



ネットワーク共有…ですか?
TortoiceSVN、file:でアクセス可能なのは、ローカルディスクの場合だけで
ネットワーク共有のリポジトリにはアクセス出来なくなっていたはずです。
# 1.6.xxのどこかでそういう変更が入ったっぽいですが…

ネットワークドライブを割り当てて、
file:///z:/以降URLエンコードされた文字列
のようにアクセスは可能かと思われますが…
その状態で「...」ボタンで再指定すればURLエンコードもデコードされた状態になるでしょう。

ただし、ネットワークドライブに割り当てた場合でも「ネットワーク共有」上のリポジトリの安全性は保証されていませんのでお忘れ無く。
# 同時に複数の環境からコミットされた場合にリポジトリが壊れる…らしい。
# ヘルプの「3.1.4. ネットワーク共有にあるリポジトリへのアクセス」参照。


「参照しているのはファイルです。ディレクトリではありません」っていうのも見た覚えはないですねぇ。
# ちなみに、どのプロトコルを使用しようとも…ファイルだけ「チェックアウト」は不可能かと思われます。
# チェックアウトはあくまでも「ディレクトリ単位」で行うことになります。
# エクスポートならTortoiceSVNのリポジトリブラウザから「名前を付けて保存」が出来そうですが。

作業コピー内の特定のファイルを過去のリビジョンのものに戻したい場合は…
作業コピー内でファイルを選択、右クリックのメニューから[TortoiceSVN]-[特定のリビジョンへ更新]で、リビジョン番号を指定すればよろしいかと……。

この回答への補足

>作業コピー内の特定のファイルを過去のリビジョンのものに戻したい場合は…
>作業コピー内でファイルを選択、右クリックのメニューから[TortoiceSVN]-[特定のリビジョンへ更新]で、リビジョン番号を指定すればよろしいかと……。

この方法で過去のリビジョンへのロールバックができました!
本当にありがとうございます。

しかし、リポジトリURLは未だにURLエンコード状態…。
こちらの解決方法はご存知ありませんか?

補足日時:2011/03/17 16:22
    • good
    • 0

>チェックアウトできません。



具体的にどうなりますか?
httpプロトコルですか?svnプロトコルですか?

「リポジトリのURL」の横の「...」ボタンで、リポジトリのパスを選択し直すと
URLエンコードが解除された状態になりますが、その状態でチェックアウト先のディレクトリ名も訂正されませんか?

この回答への補足

>具体的にどうなりますか?
チェックアウト画面でOKをクリックすると
「エラー URL」
「エラー 'file://サーバー名/SVN/以降URLエンコードされた文字列」
「エラー が参照しているのはファイルです。ディレクトリではありません」
と出ます。
そして、出力先に指定したディレクトリ(今回はデスクトップに)に
URLエンコードされた文字列のフォルダが作成されますが、中身は空です。

>httpプロトコルですか?svnプロトコルですか?
ローカルで使用しているので、ネットワークプロトコルは使用していません。

パスを選択し直しても、同じエラーがでます。

補足日時:2011/03/17 15:18
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A