svn

Aupa, hemos tenido problemas con la versión de subversion de testing/squeeze ya que al hacer un "check out", nos daba un error tal que:

svn checkout http://*.*.*.*/trunk/ trunk
svn: OPTIONS of 'http://*.*.*.*/trunk/': could not connect to server ('ttp://*.*.*.*/')

al ver este post:
http://www.sehablalinux.com/gnu-linux/problemas-con-subversion/

nos damos cuenta de que este paquete está mal:

libneon27-gnutls

En el post pone que downgradeando se soluciona, pero yo he puesto los repos de sid:

su
nano /etc/apt/sources.list

comentar con un # delante de todas las lineas y añadir esta:

y guardarlo: Ctrl + O

apt-get clean
apt-get update
apt-get install libneon27-gnutls

Aupa este es el POST bueno ;)

1.- Primero nos conectamos como root:

su

2.- Instalación de paquetes:

apt-get install apache2-mpm-prefork libapache2-svn subversion

3.- Crear carpeta para los proyectos:

mkdir /home/svn
mkdir /home/svn/projects

4.- Creamos una carpeta de configuración donde guardaremos la configuracion para los proyectos:

mkdir /home/svn/conf

5.- Creamos los siguientes ficheros con nuestro editor favorito:

5.1.- /home/svn/conf/svnserve.conf

[general]
anon-access = read
auth-access = write
password-db = passwd

5.2.- /home/svn/conf/authz

[groups]
# crear un grupo con usuarios
developers = zital, user1, user2

[/]
# leer y escribir para el grupo
@developers = rw
# leer para los demás
* = r

5.3.- /home/svn/conf/passwd

# usuarios y contraseñas
[users]

Borrar rastro de subversion de una carpeta

Aupa he creado un script que te borra toda referencia de subversion de nuestro proyecto, ideal para después de haber terminado el proyecto poder empaquetarlo ;)

#!/bin/bash
_COMMAND=`ls -aR $1 | grep .svn:$`

for _SVN in ${_COMMAND}
do
        _LEN=${#_SVN}
        let "_LEN -= 1"
        rm -rf ${_SVN:0:${_LEN}}
done

PD: El anterior articulo del subversion y apache no funciona, pero tengo solución en cuanto pueda lo corrijo ;)

Edito mientras conducía se me ha ocurrido otra más fácil:

#!/bin/bash
_COMMAND=`find $1 | grep /.svn$`

for _SVN in ${_COMMAND}
do
        rm -rf ${_SVN}
done

De todas formas se me olvido decir que debe recibir un parámetro de entrada, ejemplo:

svnpurge.sh /home/zital/projects/myproject

;)