私は異なるsvnリポジトリの別々の作業コピーである12のディレクトリコレクションを持っています。それらは私のすべてのコンピュータで同じように構成されているので、いつでもどのコンピュータでも作業できます。これを行う人は私だけです。他の人はそれを使用せず、内部使用であるため、すべて同じ資格情報を使用します。すべての作業コピーはsvn --username=aaa --password=bbb co http://xxxx/svn/yyyy .
各コンピュータに作成されます。
私はほとんどの時間これらのタスクを実行し、定期的にすべてのタスクを繰り返し、それぞれでタスクを実行するシェルスクリプトを呼び出しますsvn up
。svn ci -m "stuff"
これはすべてのコンピュータのLinux Mint 19で動作しますが(以前のバージョンでは長年にわたってうまく機能しました)、1台のコンピュータ(HP Envyノートブック)では、スクリプトはすべてのコンピュータで同じエラーを返します(名前がブロックされています)。
svn: E170013: Unable to connect to a repository at URL 'http://xxxx/svn/yyyy'
svn: E215004: No more credentials or we tried too many times.
Authentication failed
ただし、svn up
機能するディレクトリで手動でコマンドを実行すると(資格情報がわかっている)、スクリプトを実行すると正常に機能し、すべてが同期されます。
キーチェーンの内容に関するヒントを取得できませんでした。キーチェーンが使用されるという事実も認識されませんでした。スクリプトは他のすべてのコンピュータで手動介入なしで動作するため、この特定のコンピュータで動作しないようにするには、どこを探すべきかを教えてください。
答え1
ミントはよくわかりませんが、少なくとも2つを確認します。
- 実行中のユーザーと同じユーザーでスクリプトが実行されていますか?
svn up
- スクリプトは、ユーザーの介入や試行回数なしでリポジトリに(技術的に)接続できます(予想結果:1)。
svn up
最後の手段としてハードコードされた資格情報を追加することもできます。