En Subversion ¿puedo ser un usuario que no sea mi nombre de usuario?


Me gustaría saber cómo conseguir que Subversion cambie el nombre bajo el que aparecen mis cambios.

Estoy empezando a usar Subversion. Actualmente lo estoy usando para controlar el código de versión en una computadora portátil XP donde siempre estoy conectado bajo el nombre de mi esposa. Me gustaría que la base de datos de subversion mostrara los cambios bajo mi nombre.

Más adelante replicaré la base de datos para que sea accesible a toda la casa. Mi esposa usa la computadora de la oficina donde siempre está conectada bajo mi nombre. Probablemente me lo que comprueba automáticamente en los documentos modificados... preferiblemente con su nombre.

Eventualmente probablemente lo usaré desde una máquina linux bajo otro nombre de usuario.

¿Hay alguna forma de modificar el entorno de usuario para cambiar el nombre de usuario que Subversion le llama? Esperaría algo como establecer SVN_USERNAME='Mark' que anularía sin embargo, generalmente obtiene el nombre.

Actualización: Parece que la bandera --username a la que Michael se refirió funciona para cambiar el nombre reportado por "svn stat", incluso para los repositorios locales file:. Además, es pegajoso por lo que no es necesario especificarlo para el siguiente comando. Incluso reinicié y todavía usaba el valor "--username" de mi arranque anterior.

Author: Carrie Kendall, 2009-01-02

13 answers

La mayoría de los comandos de Subversion toman la opción --username para especificar el nombre de usuario que desea usar en el repositorio. Subversion recuerda el último nombre de usuario y contraseña del repositorio utilizados en cada copia de trabajo, lo que significa, entre otras cosas, que si usa svn checkout --username myuser nunca tendrá que especificar el nombre de usuario de nuevo.

Como dice Kamil Kisiel , cuando Subversion está accediendo al repositorio directamente desde el sistema de archivos (es decir, la URL del repositorio es de forma file:///path/to/repo o file://file-server/path/to/repo), utiliza su archivo permisos del sistema para acceder al repositorio. Y cuando se conecta a través de túnel SSH (svn+ssh://server/path/to/repo), SVN usa sus permisos FS en el servidor , según lo determinado por su inicio de sesión SSH. En esos casos, svn checkout --username puede no funcionar para su repositorio.

 264
Author: Michael Ratanapintha,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-07-31 08:27:42

Para svn sobre ssh intente:

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

Svn le pedirá la contraseña de user_name.

 70
Author: aminalid,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-04-28 15:12:27

Puede configurar un nombre de usuario predeterminado a través de ~/.subversion / servidores:

[groups]
yourgroupname = svn.example.com

[yourgroupname]
username = yourusername

Tenga en cuenta que las versiones anteriores de svn no lo soportan (por ejemplo, 1.3.1 [sic!]).

 38
Author: blueyed,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-11-30 17:49:36
"svn co --username=yourUserName --password=yourpassword http://path-to-your-svn"

Funcionó para mí cuando estaba en otra cuenta de usuario. Sin embargo, se le pedirá que ingrese su nombre de usuario/contraseña de nuevo. Debe iniciar sesión como el anterior una vez y estará listo para las siguientes horas (A menos que reinicie su máquina).

 31
Author: chethan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-08-27 07:43:52

Si necesita especificar un nombre de usuario que no sea su usuario registrado para usar con svn+ssh simplemente agregue una entrada a su .archivo ssh / config :

Host example.com
User jdoe
 12
Author: Aaron Dancygier,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-07-04 02:16:34

Subversion normalmente me pide mi "nombre de usuario de Subversion" si falla usando mi nombre de usuario registrado. Por lo tanto, cuando soy perezoso (generalmente) simplemente dejaré que me pida mi contraseña y presionaré enter, y esperaré el mensaje de nombre de usuario y usaré mi nombre de usuario de Subversion.

De lo contrario, la solución de Michael es una buena manera de especificar el nombre de usuario de inmediato.

 11
Author: Beau Simensen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-01 23:44:26

La mayoría de las respuestas parecen ser para svn+ssh, o no parecen funcionar para nosotros.

Para el acceso http, la forma más fácil de cerrar la sesión de un usuario SVN desde la línea de comandos es:

rm ~/.subversion/auth/svn.simple/*

Punta del sombrero: http://www.yolinux.com/TUTORIALS/Subversion.html

 7
Author: Danny Schoemann,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-04-11 06:57:20

Creo que si usa el método file:// para acceder a su repositorio subversion, sus cambios siempre se realizan bajo el usuario que accede al repositorio. Debe usar un método que admita la autenticación, como http: / / o svn://.

Véase http://svnbook.red-bean.com/en/1.5/svn-book.html#svn.serverconfig.choosing

 6
Author: Kamil Kisiel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-01 23:47:25

Usando Subversion con el módulo Apache o svnserve. He podido realizar operaciones como múltiples usuarios usando --username.

Cada vez que invoque una orden de Subversion como un 'nuevo' usuario, su directorio $HOME/.subversion/auth/<authentication-method>/ tendrá una nueva entrada en caché para ese usuario (suponiendo que pueda autenticarse con la contraseña correcta o el método de autenticación para el servidor que está contactando como ese usuario en particular).

 6
Author: Don Wakefield,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-15 14:03:12

Si está utilizando svn+ssh para conectarse al repositorio, entonces lo único que lo autentica y lo autoriza son sus credenciales ssh. Todo lo demás es ignorado. Su nombre de usuario será registrado en subversion exactamente como está establecido en su conexión ssh. Una excelente explicación de esto está en jimmyg.org/blog/2007/subversion-over-svnssh-on-debian.html

 2
Author: codeMonster,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-15 13:51:18

Vaya a ~/.subversion/auth/svn.simple/*, y verá una lista de archivos que contiene la información sobre su cuenta de usuario svn. Simplemente borra todos los demás que no necesites.

Después de eso, cuando haces cualquier cosa que se refiere a la operación SVN, como commit, rm, etc,. Se le pedirá de nuevo que introduzca nombre de usuario o contraseñas.

 2
Author: Alan Dong,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-05-31 20:47:18

TortoiseSVN siempre pide nombre de usuario. (a menos que usted le diga que no)

 0
Author: recursive,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-02 00:26:04

Creo que puede configurar la variable de entorno SVN_USER para cambiar su nombre de usuario SVN.

 -3
Author: Sophie Alpert,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-02 00:59:12