¿Puedo crear un repository SVN alojado 'paralelo' al mío en mi server de oficina?

Hemos estado utilizando un server DIY SVN en la oficina desde hace aproximadamente un año. Es una configuration simple con SVN instalado en un server doméstico. Usamos tortuga SVN para acceder a ella. Desearía haberme enterado de un sistema de control de versiones hace años. De todos modos, el acceso al server es perfecto en la oficina en la LAN de 1Gbps, pero afuera es utilizable pero deficiente, limitado por el Velocidad de carga de 50k bytes / seg de nuestra línea ADSL a la web. Supongo que esto puede mejorar algún día con 'infinito', pero podemos morir esperando.

Me gustaría tener un repository "paralelo" alojado, por lo que me doy count de que pagaré, donde el acceso es mucho más rápido. Esto también nos daría una copy de security adicional. Mi repository está justo por debajo de 40G, por lo que un límite de 100G estaría bien. ¿Hay alguna manera de hacer esto y hacer que los dos sean reflections tales que los commit (al less pequeños) sean visibles en ambos casi de forma inmediata? Ya estoy usando el command Svnbackup para hacer un espejo paralelo en nuestro server, ¿puede funcionar de esta manera?

Cualquier sugerencia o alternativa apreciada.

TIA Brian

¿Desea un server de solo lectura o acceso de lectura y escritura a más de un server? Cuando solo necesita un espejo de solo lectura, puede usar svnsync para replicar su server de oficina en un server espejo.

Cuando desee comprometerse desde diferentes lugares, eche un vistazo a una herramienta distribuida como hg + hgsubversion o git-svn, que pueden utilizarse como clientes asynchronouss para svn.

Lo que creo que realmente necesita es un proxy esclavo: esta es una copy de un server de subversión para acceso de solo lectura, cuando escribe (para ello), las confirmaciones se pasan directamente al maestro. A medida que lee mucho más que escribir, esto proporciona una forma simple pero efectiva de lograr lo que desea.

Hay muchos tutoriales en la web, pero todos requieren que ejecutes subversion usando http access (no svnserve). El esclavo se mantiene actualizado a través de la excelente svnsync y un gancho post-commit.

El server estándar SVN de Linux tiene ganchos que le permiten ejecutar sus propios scripts en events. Puede usar el enganche post-commit (simplemente coloque un script llamado "post-commit" en el directory "hooks").

Ahora puede simplemente emitir una copy rápida de todo el repository, que es bastante fácil de configurar ( svnadmin hotcopy from to ) y copyr el repository al otro host en Internet usando ssh o similar. Puedes hacer esto en ambas máquinas y eres bueno.

Inconvenientes:

  • Si su repository es grande, esto lleva mucho time
  • Tenga cuidado con la posibilidad de que alguien se comprometa con un repository y otra persona con el otro repository simultáneamente. Esto bien podría corromper todo. Debes asegurarte de que esto no ocurra o de bloquear el repository (como apagar svn durante el process de copydo)
  • Necesita acceso de shell a ambas máquinas

Puede acelerar las cosas guardando el repository en un file local y solo transmitiendo diffs a la otra máquina.

    Intereting Posts