Mac OS X Leopard の場合 - ターミナルからリモート リポジトリにアクセスしようとすると、常に次のように求められます: 1. パスワード 2. ユーザー名 3. パスワード (再度)
メッセージ付き:「認証レルム: http://svn.myserver.com:80 Subversion」
確認したところ、資格情報がキーチェーンに保存されており、SVN はそれらにアクセスできます。なぜそれらを使用しないのですか?
Mac OS X Leopard の場合 - ターミナルからリモート リポジトリにアクセスしようとすると、常に次のように求められます: 1. パスワード 2. ユーザー名 3. パスワード (再度)
メッセージ付き:「認証レルム: http://svn.myserver.com:80 Subversion」
確認したところ、資格情報がキーチェーンに保存されており、SVN はそれらにアクセスできます。なぜそれらを使用しないのですか?
サブバージョン認証ディレクトリの所有者を再帰的に変更することで、これを解決しました。
sudo chown -R myuser:staff ~/.subversion/auth/
(前のユーザー: グループペアは に設定されていましたroot:staff
)
password-stores = keychain
また、Subversion 構成ファイルを設定する必要があります。
~/.subversion/config
デフォルトではsvn
(およびほとんどの Unix アプリ) は、リモート ログインのユーザー名としてローカル ユーザー名を渡します。Subversion サーバー上のアカウント名がローカル アカウント名と異なると思われます。したがって、最初に Subversion パスワードを入力すると認証が失敗し、svn
ほとんどの Unix アプリと同様に、リモートのユーザー名とパスワードを要求し、再認証を試みます。--username
次のオプションを使用して、リモート ユーザー名を渡すことができますsvn
。
svn --username [remote_username] ...
対応する認証ファイルを削除するだけでこの問題を解決しました~/.subversion/auth/svn.simple
(面白い名前が付けられているため、grepで正しいファイルを見つけてください)。次に、そのリポジトリ(svnがユーザー名とパスワードを要求した場所)で次のsvnを起動した後、正しく機能するようになりました。
ssh ウィンドウから svn コマンドを実行すると、同じ問題に遭遇しました。上記のいくつかのコメントに基づいて、~/.subversion/auth/svn.simple の下にある関連ファイルを削除し、OSX ボックスのターミナル セッションから直接 svn コマンドを実行すると、ウィンドウがポップアップし、アクセス許可を付与するかどうかを尋ねられました。私のキーチェーンを読み取るためのsvn。私は永遠に許可を与えましたが、ssh ウィンドウの svn コマンドは、パスワードの入力を求められることなく機能します。
OS X で同様の問題があり、svn にアクセス権が付与されたキーチェーンに明確に登録されているにもかかわらず、SVN は保存された資格情報の使用を単に拒否しました。
私の~/.subversion/auth
ディレクトリには奇妙な権限がありました。
sudo chmod 777 ~/.subversion/auth
私の問題を解決しました。
もっと情報を提供できますか?パスワードのキーチェーン キャッシュは、Subversion 1.4.x まで追加されませんでした。エラーは出ますか?支援するには、さらに情報が必要です。
答えはありませんが、自分のマシンにローカルでログインしている場合、Subversion はキーチェーンのパスワードを読み取りますが、削除したマシンから Mac に SSH 接続すると、Subversion はキーチェーンのパスワードを読み取らないことに気付きました。 .
sshログインは、キーチェーンにアクセスできない環境にsvnコマンドを配置しているようです...
それはあなたの問題でしょうか?