Red de conocimiento informático - Conocimiento del nombre de dominio - Cómo configurar un servidor svn en Windows

Cómo configurar un servidor svn en Windows

Herramientas/Materiales

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

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;