Cómo configurar un servidor svn en Windows
Sistema operativo: Windows 2003, 32 bits
Versión del servidor SVN: svn-win32-1.6.16
Versión del cliente SVN: TortoiseSVN- 1.6.16.21511
Método/Paso I. Preparación
1. Servidor SVN: descomprima el paquete de software y descargue la última versión del sitio web oficial.
2. Cliente SVN: TortoiseSVN, a menudo llamada la pequeña tortuga, es un programa cliente que se utiliza para comunicarse con el servidor.
2. Instalar programas de servidor y cliente
1. Servidor SVN: simplemente extráigalo directamente a una carpeta. Ruta de ejemplo: c:\svn\
Nota: Si descargó el programa msi, ejecútelo directamente y siga las instrucciones para instalarlo.
2. Cliente SVN: simplemente ejecute el mensaje para instalar. Ruta de ejemplo: C:\Program Files\Subversion
3. Cree un repositorio (Repository): Ruta de ejemplo: e:\svnroot. Hay dos métodos para crear un repositorio:
Método 1. Cree un directorio vacío e:\svnroot\repos1, ingrese a la carpeta repos1, haga clic derecho en el espacio en blanco y luego haga clic con el botón derecho. botón. Haga clic derecho en el espacio en blanco y seleccione "TortoiseSVN->Crear repositorio aquí...".
Método 2. Cree un directorio vacío e:\svnroot\repos2, ingrese la línea de comando de DOS e ingrese el siguiente comando:
svnadmincreate e:\svnroot\repos2
4. Ejecute el servidor SVN e inicie el servicio. Hay dos formas de iniciar el servicio:
Método 1, para iniciar temporalmente el servicio, ingrese el siguiente comando en DOS:
svnserve -d -r -r e:\svnroot\ repos1 --listen -dirección IP del host --listen-port=número de puerto
Nota: "listen-host" y "listen-port" son opcionales. El puerto predeterminado es 3690. Si el puerto ya está ocupado, puede usar la opción de puerto de escucha para especificar el número de puerto.
Nota: No cierre la ventana de la línea de comandos, de lo contrario se detendrá el servicio svn.
Método 2, inicie el servicio SVN como un programa en ejecución en segundo plano:
sc create svnserve binPath= "c:\svn\bin\svnserve.exe --service -r e:\ svnroot \repos1" displayname= " Subversion" depend=Tcpip start= auto
Nota 1:
(1)sc es el programa de configuración de servicios que viene con Windows.
(2) El parámetro binPath representa la ruta de instalación del archivo ejecutable de svnserve.
(3) --service significa ejecutarse como un servicio de Windows, --r especifica la ubicación de svnrepository, el parámetro service y el parámetro r son ambos parte de binPath, por lo que se incluyen en un par con la ruta de svnserve.exe entre comillas dobles.
(4) displayname indica el nombre que se mostrará en la lista de servicios de Windows, depend=Tcpip indica que el servicio svnserve requiere que el servicio tcpip se ejecute y start=auto indica que se ejecutará automáticamente después puesta en marcha. Después de instalar el servicio, svnserve no se ejecutará automáticamente hasta el siguiente inicio.
Explicación 2:
(1) No hay espacio antes del signo igual en binPath, y hay un espacio después del signo igual, dependencia e inicio son iguales. y el servicio está precedido por - en lugar de -, r está precedido por -.
(2) Para desinstalar el servicio svn, ejecute sc delete svnserve.
(3) De "sc" a "auto" están en el mismo comando sc y deben escribirse en la misma línea.
(4) Comando de inicio de servicio: netstart svnserve, comando de parada de servicio: net start svnserve, también puede ingresar a la interfaz proporcionada por Windows para operar el servicio SVNService, es decir, Panel de control - servicio gt;
(5) Si la ruta contiene espacios, asegúrese de usar "\" para manejar el símbolo """. Por ejemplo, en el ejemplo anterior, si svnserve.exe está en "c:\programfiles \svn\" , el comando debe escribirse como "binpath="\"c:\programfiles\svn\bin\svnserve.exe\"
5. Configurar permisos de usuario Configurar usuarios y permisos
(1 ) Modifique svnserve.conf y abra svnserve.conf en el directorio e:\svn\repos1\conf. Abra svnserve.conf con un editor de texto:
Ubicación:
# anon-access = leer
# auth-access = escribir
# contraseña-db = contraseña
Leer
anon-access = leer
auth-access = escribir
contraseña-db = passwd
Nota:
No hay espacio antes de columnas como anon-access.
anon-access = read significa que el acceso sin nombre de usuario y contraseña es de solo lectura. Si se cambia a ninguno, no se puede acceder a ningún nombre de usuario ni contraseña. access = write significa que el acceso con nombre de usuario y contraseña es para escribir (y por supuesto para leer)
contraseña-db = passwd significa que se pueden agregar usuarios al archivo passwd a través de nombre de usuario = contraseña
(2) Modificación del archivo passwd en el mismo directorio para agregar cuentas de usuario:
Reemplazar:
[usuarios]
# harry = harryssecret
# sally = harryssecret
# sally = harryssecret
# sally = harryssecret
# sally = harryssecret
# sally = harryssecret
# sally = sallyssecret
Agregar cuenta:
[usuarios]
# harry = harryssecret
# sally = sallyssecret
admin = admin
Agregar una cuenta de administrador con contraseña admin.
6. Inicialice SVN e importe datos
Seleccione la carpeta para cargar SVN, "haga clic derecho -gt; TortoiseSVN -gt; Importar...". Ingrese "svn://localhost/project1/" en el cuadro de diálogo "URL del repositorio". Ingrese un comentario en "Importar mensaje" y haga clic en "Aceptar". Cuando se le solicite ingresar una cuenta, ingrese el administrador de la cuenta y la contraseña del administrador.
7. Pruebe SVN
Prueba local: cree una nueva carpeta vacía test1, haga clic derecho, seleccione "SVN Checkout" e ingrese "svn" en "URL del repositorio": / /localhost/proyecto1".
Pruebas en otras máquinas: si la dirección IP del host que ejecuta svnserve es 1.2.3.4, entonces la URL será "svn://1.2.3.4/project1".
Configuración del servidor Linux SVN y uso del cliente
2010-09-23 11:32:07
Etiquetas: Linux Server SVN Leisure Client
Introducción a SVN
SVN es un sistema de gestión de versiones, anteriormente conocido como CVS, que es la piedra angular del software de código abierto. Los sistemas de gestión de versiones están diseñados para resolver los problemas que seguramente surgirán cuando varias personas mantienen el mismo código fuente, incluso con una comunicación adecuada.
Algunos conceptos en SVN:
a. Biblioteca de recursos
Un lugar donde el código fuente se almacena de manera uniforme
b. p> p>
Cuando no tenga el código fuente a mano, deberá retirar una copia del código fuente del repositorio
c Enviar
Enviar.
La confirmación es una forma de obtener el código fuente del repositorio.
c.Enviar
Después de cambiar el código, debe enviarlo al repositorio
d.Actualizar
Cuando lo haya hecho. desprotegido Cuando haga una copia del código fuente, actualícela para que esté sincronizada con el código fuente en el repositorio, y el código disponible contendrá los últimos cambios. El código que tienes en tus manos tendrá los últimos cambios
El proceso de desarrollo diario en realidad se ve así (suponiendo que hayas verificado y hayas estado trabajando durante unos días): actualizar (obtener el código más reciente) --gt ; modificación y depuración exitosas --gt; Enviar (deja que todos vean los cambios que hiciste)
¿Qué pasa si dos programadores modifican el mismo archivo al mismo tiempo? Si dos programadores modifican el mismo archivo al mismo tiempo, SVN puede fusionar las modificaciones de los dos programadores. Sí, es una fusión. De hecho, la gestión del código fuente de SVN se basa en unidades de línea, es decir, siempre y cuando. dos programas Si el programador no modifica la misma línea del programa, SVN fusionará automáticamente los dos tipos de modificaciones. Si están en la misma línea, SVN solicitará el archivo Confict y conflict, y se requiere confirmación manual.
Introducción a TortoiseSVN
TortoiseSVN es un cliente gratuito y de código abierto para el sistema de control de versiones Subversion que puede administrar archivos y directorios a lo largo del tiempo. Los archivos se almacenan en un repositorio central, que es muy similar a un servidor de archivos normal, pero recuerda cada modificación de archivos y directorios. Puede restaurar archivos a versiones anteriores y ver el historial para ver qué modificaciones se realizaron en los datos y quién las realizó. Es por eso que mucha gente piensa en Subversion y los sistemas de control de versiones como una especie de "máquina del tiempo".
Configurar SVN
1, configurar yum, buscar el instalador de subversion
[root@svn ~]# yum list |grep subversion
subversion.i386 1.4.2-4.el5_3.1 base
subversion-devel.i386 1.4.2-4.el5_3.1 base
Subversion-devel.i386 es Subversion La versión más popular.
subversion-devel.i386 1.4.2-4.el5_3.1 base
subversion-javahl.i386 1.4.2-4.el5_3.1 base
subversion-perl.3.1 base
subversion-ruby.i386 1.4.2-4.el5_3.1 base
[root@svn ~]# yum -y install subversion p>
Pruebe si la instalación fue exitosa:
#svnserve -- version Ingrese la versión para mostrar que la instalación fue exitosa
[root@svn ~]# netstat - nat Ver el puerto TCP predeterminado 3690 si está escuchando.
2. Crear repositorio svn
[root@svn /]# mkdir -p /data/svndata
[root@svn /]# svnadmin create / data/svndata/winne winne winne es el nombre del almacén
3. Descripción general del archivo de configuración de svnserve
svnserve.conf: archivo de configuración del servicio svn, ubicado en el directorio conf del almacén. directorio.
passwd: archivo de nombre de usuario y contraseña, su nombre se especifica en el archivo svnserve.conf, por defecto es el mismo directorio.
authz: el archivo de configuración de permisos, cuyo nombre también se especifica en el archivo svnserve.conf y se encuentra en el mismo directorio de forma predeterminada.
archivo conf/svnserve.conf
Los elementos de configuración se dividen en los siguientes cinco elementos:
anon-access controla el acceso de usuarios no autenticados a el repositorio.
auth-access controla el acceso al repositorio por parte de usuarios autenticados.
contraseña-db especifica el nombre del archivo nombre de usuario-contraseña.
authz-db especifica el nombre del archivo de configuración de permisos a través del cual se puede implementar el control de acceso basado en rutas.
reino especifica el dominio de autenticación del repositorio, es decir, el nombre del dominio de autenticación que se solicita al iniciar sesión. Si el dominio de autenticación de ambos repositorios es el mismo, se recomienda utilizar los mismos archivos de datos de nombre de usuario y contraseña
Nota: hay un error en el parámetro anon-access = read en la versión 1.4.
anon-access = read
La comprobación del cliente (extracción) provocará el error "Apertura no autorizada del directorio raíz para operaciones de edición. Cambie el parámetro a Ninguno y será normal". .
archivo conf /Passwd
usuario1 = usuario1
usuario2 = usuario2
archivo conf /authz
[grupos] Grupo de configuración
admin = usuario1
[/] Permisos del directorio raíz (es decir, carpeta "svndata "svndata")
usuario1 = rw Permisos del usuario1 son: OK Lectura y escritura
user2 = r Los permisos del usuario 2 son: legibles y no escribibles
@admin = rw Establecer permisos de grupo
[svndata: /winne] Establecer los permisos del directorio raíz Establecer los permisos de la carpeta "winne" en el directorio raíz
usuario1 = rw
usuario2 = r
.. .y así sucesivamente
4. Inicie y detenga el servicio SVN
Inicie el servicio SVN:
[root@svn ~]# svnserve -d -r /data/svndata/
-d significa ejecutar en segundo plano
-r especifica el directorio raíz como /data/svndata/
Detenga el servicio SVN:
ps - aux |grep svn
kill -9 proceso kill
Uso del cliente
Uso del cliente Windows TortoiseSVN
1. Instalación del cliente TortoiseSVN
Pruebe y seleccione el paquete chino de pago del cliente TortoiseSVN 1.6.5
2. Actualice los archivos del cliente en el servidor (operación usuario1)
Cree uno nuevo y vacío, haga clic derecho en Pagar (descomprimir)
svn://192.168.103.26/winne
Ingrese la cuenta de usuario autorizado en el archivo passwd<. /p>
En esto Agregue algunos archivos al directorio para probar. Luego haga clic derecho en TortoiseSVN-gt en el espacio en blanco AGREGAR para agregar la lista al servidor.
En este momento, no se ha copiado en el servidor. Se requiere confirmación para copiar.
Puede ver el archivo recién enviado en el navegador del repositorio. La versión enviada es 1.
3. El cliente extrae los datos del servidor (operación usuario2)
El usuario2 crea un directorio vacío usuario2 en la máquina local, hace clic derecho en Pagar (extraer)
Rellenar la dirección: svn://192.168.103.26/winne Salida a G:\user2 OK
Agregue un nuevo archivo .txt y luego solicite un error de permiso al enviar (enviar). escribir, por lo que el envío puede tener éxito sólo si se cambia la identidad del usuario1. Registro SVN -gt; actualización
Usuario B: registro SVN -gt;