Subversionでは、ログイン名以外のユーザーになれますか?


253

Subversion変更が表示される名前を変更する方法を教えてください。

使い始めたばかりですSubversion。私は現在、妻の名前で常にログインしているXPラップトップのバージョン管理コードにそれを使用しています。Subversion DBに私の名前で変更を表示してほしい。

後で、DBを複製して、家全体からアクセスできるようにします。妻はいつも私の名前でログインしているオフィスのコンピューターを使用しています。変更されたドキュメントを自動的にチェックインするように、おそらく彼女の名前で設定します。

最終的には、Linuxマシンから別のユーザー名で使用することになるでしょう。

ユーザー環境を変更して、Subversionが呼び出すユーザー名を変更する方法はありますか?私SVN_USERNAME='Mark'はオーバーライドするような設定のようなものを期待しますが、通常は名前を取得します。

更新:--username Michaelが言及したフラグは"svn stat"、ローカルファイル:リポジトリであっても、によって報告される名前を変更するように機能するようです。また、スティッキーなので、次のコマンドで指定する必要はありません。私は再起動さえしました、そしてそれはまだ"--username"私の前回のブートからの値を使いました。

回答:


280

ほとんどのSubversionコマンドは--username、リポジトリに使用するユーザー名を指定するオプションをとります。Subversionは、各作業コピーで使用された最後のリポジトリのユーザー名とパスワードを記憶します。これは、特に、使用するsvn checkout --username myuser場合にユーザー名を再度指定する必要がないことを意味します。

Kamil Kisielが言うように、Subversionがファイルシステムから直接リポジトリにアクセスしている場合(つまり、リポジトリのURLがの形式であるfile:///path/to/repo場合file://file-server/path/to/repo)は、ファイルシステムの権限を使用してリポジトリにアクセスします。また、SSHトンネリングsvn+ssh://server/path/to/repoを介し接続すると、SVNは、SSHログインによって決定されたサーバー上のFS権限を使用します。これらの場合、svn checkout --usernameリポジトリで機能しない可能性があります。


素早い回答ありがとうございます。--usernameフラグは、再起動しても非常に固定されているようです。そして、それは私のファイルで正常に動作します:リポジトリ。
市場

70

ssh上のsvnの場合:

svn list svn+ssh://[user_name]@server_name/path_to_repo  

svnはのuser_nameパスワードを要求します。


1
johndoe@example.comのようなユーザー名では機能しません
neoneye

4
https://user_name@.../path私(cygwin)では--usernameうまくいきませんでしたが、うまくいきました。
zelanix 2014

44

〜/ .subversion / serversでデフォルトのユーザー名を設定できます:

[groups]
yourgroupname = svn.example.com

[yourgroupname]
username = yourusername

古いバージョンのsvnはサポートしていません(例1.3.1 [sic!])。


37
"svn co --username=yourUserName --password=yourpassword http://path-to-your-svn"

別のユーザーアカウントで働いていました。ただし、ユーザー名/パスワードをもう一度入力するように求められます。上記のように一度ログインする必要があり、その後はすべての準備が整います(マシンを再起動しない限り)。


4
コマンドラインでパスワードを指定するときは注意してください。マシンでプロセスリストを見ることができる人は誰でも、プロセスリストでパスワードを見ることができます。シングルユーザーシステムでは問題ありませんが、マルチユーザーシステムではあまり良くありません。
Bleater 2012


11

ログインしているユーザー名を使用して失敗した場合、Subversionは通常、「Subversionユーザー名」を尋ねます。したがって、私が怠惰な場合(通常)、パスワードの入力を求められたらEnterキーを押し、ユーザー名のプロンプトを待ち、Subversionユーザー名を使用します。

それ以外の場合、Michaelのソリューションは、ユーザー名をすぐに指定するための良い方法です。


1
--usernameフラグが存在しないか、さまざまなコマンドでわずかに異なるように見えるすべてのSVNコマンド(チェックアウト、コミットなど)で機能するため、これはより良い回答と考えます...
edwardsharp



6

ApacheモジュールまたはsvnserveでSubversionを使用する。を使用して複数のユーザーとして操作を実行できました--username

「新しい」ユーザーとしてSubversionコマンドを呼び出すたびに、$HOME/.subversion/auth/<authentication-method>/ディレクトリにはそのユーザー用にキャッシュされた新しいエントリがあります(その特定のユーザーとして接続しているサーバーの正しいパスワードまたは認証方法で認証できる場合) 。



2

に移動すると~/.subversion/auth/svn.simple/*、svnユーザーアカウントに関する情報を含むファイルのリストが表示されます。不要なものはすべて削除してください。

その後、コミット、rmなど、SVN操作に関連することを行う場合。ユーザー名またはパスワードの入力を再度求められます。


-1

TortoiseSVNは常にユーザー名の入力を求めます。(あなたがそうしないように言っていない限り)


いいえ、ありません。Linuxでは1.9.5ではなく、少なくとも。
drkvogel

デフォルトではローカルのユーザー名が使用されますが、リモートリポジトリに接続するときに常に使用する必要があるとは限りません。
drkvogel

-3

SVN_USER環境変数を設定してSVNユーザー名を変更できると思います。


3
そのためのリファレンスを提供できますか?私は検索を行ったところ、svn_usernameのみが見つかりました。これは誰かが作成したパッチであり、メインラインに到達したかどうかはわかりません...もしそうなら、他のヒットを見つけたと思います。
市場
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.