<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>::Cristian Menghi:: &#187; multiples repositorios svn apache</title>
	<atom:link href="http://www.menghi.biz/tag/multiples-repositorios-svn-apache/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.menghi.biz</link>
	<description>FLOSS, Informatica, Fotografia y Musica</description>
	<lastBuildDate>Sat, 31 Dec 2011 14:42:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Vhost, SVN, Apache2</title>
		<link>http://www.menghi.biz/2008/vhost-svn-apache2/</link>
		<comments>http://www.menghi.biz/2008/vhost-svn-apache2/#comments</comments>
		<pubDate>Tue, 10 Jun 2008 19:54:57 +0000</pubDate>
		<dc:creator>cristian</dc:creator>
				<category><![CDATA[FLOSS]]></category>
		<category><![CDATA[Trabajo]]></category>
		<category><![CDATA[multiples repositorios svn apache]]></category>
		<category><![CDATA[svn apache2]]></category>
		<category><![CDATA[virtual host apache2 svn]]></category>

		<guid isPermaLink="false">http://www.menghi.biz/?p=166</guid>
		<description><![CDATA[Hace algún tiempo que instale el servidor SVN en uno de nuestros servers con el fin de usarlo para motte. Como siempre pasa, por poco tiempo y falta de planificación ahora motte creció y tenemos hosteados varios proyectos, con lo cual se creo svn.codigolibre.net, ahora el tema que teníamos antes es que estaba pensado el <a href="http://www.menghi.biz/2008/vhost-svn-apache2/"> leer más <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p><span style="color: #000000;">Hace algún tiempo que instale el servidor SVN en uno de nuestros servers con el fin de usarlo para motte. Como siempre pasa, por poco tiempo y falta de planificación ahora motte creció y tenemos hosteados varios proyectos, con lo cual se creo svn.codigolibre.net, ahora el tema que teníamos antes es que estaba pensado el SVN en un principio para un solo proyecto, el framework motte, con lo cual el versionado venia bárbaro, pero al subir cosas dentro del mismo repositorio los demás proyectos comenzaron a tomar el mismo numero de versionado que motte, con lo cual es una #@$&amp;, así que migre el viejo SVN y su configuración anterior a un Vhost de apache2 usando DAV_SVN, con esto gano, en que separo los proyectos, quedan versionando individualmente y puedo ponerlo en cualquier dominio!, así que voy a intentar explicar como realizar esto, y que quede funcionando, de momento esta sobre http, pero pasarlo a https no es tan difícil! <img src='http://www.menghi.biz/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  y estoy buscado como enjaular el svn.<br />
<span id="more-166"></span></span> <span style="color: #000000;"><br />
Requisitos: Apache2, Subversion, libapache2-svn<br />
Habilitamos los módulos, dav y svn.<br />
Creamos un carpeta /srv/repos (pej.)<br />
dentro creamos las carpetas de los proyecto que fuera necesario pej. proj1 y pro2, quedaria: /srv/repos/proj1  y /srv/repos/proj2</span></p>
<p><span style="color: #000000;">y tenemos por ejemplo 2 dominios: svn.proj1.net o svn.proj2.net o podemos tenerlo en carpetas para un dominio ej: http://svn.codigolibre.net/motte y http://svn.codigolibre.net/project1 (en si la conf no cambia en mucho).</span></p>
<p><span style="color: #000000;">En donde tenemos la configuración de nuestro vhost debemos agregar las siguientes lineas:</span></p>
<blockquote><p><span style="color: #000000;"> <span style="color: #800000;">&lt;location /motte&gt; # aca cambia, para que sea svn.codigolibre.net/motte<br />
Order allow,deny<br />
Allow from all<br />
DAV svn<br />
SVNPath /srv/repos/proj1 # El path al repositio, ver tambien </span></span><span style="color: #800000;">SVNParentPath</span><span style="color: #800000;"><br />
</span><span style="color: #800000;"> SVNAutoVersioning On #Esto habilita el commit de forma automatica<br />
Require valid-user<br />
AuthType Basic<br />
AuthName &#8220;project Subversion Repository&#8221;<br />
AuthUserFile </span><span style="color: #800000;">/etc/apache2/svn/proj1</span><span style="color: #800000;">.dav_svn.passwd # usuarios del repositorio<br />
AuthzSVNAccessFile /etc/apache2/svn/</span><span style="color: #800000;">proj1-</span><span style="color: #800000;">authz # permisos sobre el mismo<br />
&lt;/location&gt; </span></p></blockquote>
<p><span style="color: #000000;">Agregamos los usuarios al </span><span style="color: #000000;">dav_svn.passwd (yo, cree uno por projecto), para esto usamos htpasswd, las opcion -c crea el archivo, y la -m agrega usuarios.<br />
</span></p>
<blockquote><p><span style="color: #800000;">$sudo htpasswd  -c -m </span><span style="color: #800000;">/etc/apache2/svn/proj1</span><span style="color: #800000;">.dav_svn.passwd pepe</span><span style="color: #800000;"><br />
$sudo htpasswd  -m </span><span style="color: #800000;">/etc/apache2/svn/proj1</span><span style="color: #800000;">.dav_svn.passwd</span><span style="color: #000000;"><span style="color: #800000;"> juan</span><br />
</span></p></blockquote>
<p><span style="color: #000000;">El archivo de Authz, podría ser algo así, los nombre pueden cambiar&#8230;.</span></p>
<blockquote><p><span style="color: #800000;">[groups]<br />
desarrolladores = pepe, juan # los que definimos en el passwd<br />
otros = anonimo<br />
[/]<br />
@</span><span style="color: #800000;">desarrolladores</span><span style="color: #660000;"><span style="color: #800000;"> = rw<br />
@otros = r</span></span></p></blockquote>
<p>Luego de esto, recargamos apache y listo, esta andando&#8230;.</p>
<p>De momento en svn.codigolibre.net, no se piensa usar Branches, pero para crearlas, podemos hacerlo de la siguiente manera:</p>
<p><strong>a) Trunk</strong> &#8211; Este es el directorio principal de desarrollo, aquí es donde casi siempre trabajamos</p>
<p><strong>b) Tags</strong> &#8211; Este es el directorio de las versiones de liberación y de las alpha/beta, es un directorio &#8220;muerto&#8221;, cada vez que hay una nueva versión, se coloca en tags para el histórico y hacer el archivo <strong>project-version.tar.gz</strong> y se sigue trabajando en trunk</p>
<p><strong>c) branches</strong> -Este es el directorio de las pruebas, si alguien desea intentar algo nuevo o hacer un experimento, lo desarrolla aqui y si resulta y el grupo lo acepta, se mueve al trunk</p>
<p>Para crear este árbol:</p>
<p><span style="color: #800000;"><strong>$svn &#8211;username pepe mkdir http://svn.codigolibre.net/motte -m &#8220;create project directory&#8221;<br />
$svn mkdir </strong><strong>http://svn.codigolibre.net/motte</strong><strong>/trunk -m &#8220;create trunk directory&#8221;<br />
$svn mkdir </strong><strong>http://svn.codigolibre.net/motte</strong><strong>/tags -m &#8220;create tags directory&#8221;<br />
$svn mkdir </strong><strong>http://svn.codigolibre.net/motte</strong><strong>/branches -m &#8220;create branches directory&#8221; </strong></span></p>
<p><span style="color: #800000;">B</span>ueno, me queda por ver la posibildad de alguna interfaz web que haga mas facil el mantenimiento de los repos,usuarios y authz por mysql/ldap y chrootear el svn.</p>
<p>mas info en: <a href="http://svnbook.red-bean.com/" target="_blank">svnbook</a>, <a href="http://es.wikipedia.org/wiki/Subversion" target="_blank">svn en wikipedia</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.menghi.biz/2008/vhost-svn-apache2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

