Pregunta

Quiero cambiar el nombre de usuario predeterminado SVN a un nuevo nombre. Probé solución sugerida en este enlace ( ¿Cómo cambio el autor por defecto para acceder a una SVN repositorio local? ), pero no está funcionando.

Tengo acceso al repositorio SVN a través de línea de comandos y el uso de Aptana cliente subversivo.

¿Fue útil?

Solución

Editar : Esta respuesta está en la forma de cambiar un autor en los registros, no cómo configurar el autor predeterminado. Voy a dejar la solución a este problema, ya que aún podría ayudar a deshacer las últimas confirmaciones, no eran el autor la correcta.

Editar 2 . Ejemplo script gancho y la información de los archivos .bat


No dar muchos detalles por lo que tendremos que adivinar, y mi primer pensamiento sería sobre el script gancho que se llama para validar el cambio. En ese caso, su cliente no es el problema, es un problema de configuración del servidor.

Asegúrese de que el script de pre-revprop de cambio de gancho (en el directorio de <repository>/hooks, en el servidor), es ejecutable por el servidor y permite un cambio de autor.

Este es un ejemplo en C:

#include <stdio.h>

int main(int argc, char *argv[])
{
int i;
 char *repos = argv[1];
 char *rev = argv[2];
 char *user = argv[3];
 char *propname = argv[4];
 char *action = argv[5];

 if (!strcmp(action, "M") && !strcmp(propname, "svn:log")) return 0;
 if (!strcmp(action, "M") && !strcmp(propname, "svn:author")) return 0;
 fprintf(stderr, "Changing revision properties other than svn:log or svn:author is prohibited");
 return 1;
} 

Si su servidor SVN es en Linux, es posible que también simplemente cambia el nombre del archivo pre-revprop-change.tmpl que se crea automáticamente con cada repositorio a pre-revprop-change, y darle permiso de ejecución para el servidor. Se debe tener este aspecto para permitir autor y registrar los cambios:

#!/bin/sh

REPOS="$1"
REV="$2"
USER="$3"
PROPNAME="$4"
ACTION="$5"

if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:author" ]; then exit 0; fi
if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi

echo "Changing revision properties other than svn:log or svn:author is prohibited" >&2
exit 1

Para Windows:

@echo off
REM pre-revprop-change.bat hook script
if "%4" == "svn:log" exit /b 0
if "%4" == "svn:author" exit /b 0
echo "Changing revision properties %4% is prohibited" >&2
exit /b 1

Si esto no funciona, puede ser debido a la las variables PATH no tienen los valores adecuados para la cuenta de servidor o COMSPEC, o también podría ser los permisos del script gancho. Compruebe este enlace para obtener más detalles .

Hay otros ejemplos de scripts gancho en CollabNet .

Más detalles en el control de versiones con Subversion libro en línea , y también aquí (marque las siguientes secciones).

Otros consejos

Para Eclipse (pero debería funcionar con el IDE basado en Eclipse como Aptana):

En las vistas SVN Repository del SVN Perpective, sólo tiene que ir a la  Location Properties del repositorio deseado y cambiar las credenciales en el cuadro de Authentication.

Debe cambiar su autor a partir de ahora.

Si quiere reescribir la historia, usted tiene que usar algo como solución de RedGlyph.

1.4.x Subversion han conseguido solamente svn: log permitido en el archivo pre-revprop-change defecto. Esto puede causar un problema al utilizar Eclipse con el plugin SVN subversivo.

Para resolver el error mágica que indica que

  

Cambio de propiedades de revisión distintos de svn: log está prohibido

después de los comandos svn. Para resolver este problema particular complemento

if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:author" ]; then exit 0; fi

de la solución RedGlyph anteriormente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top