versiones tutorial tortoise subversion repositorio español entrar desvincular crear control con carpeta svn repository clone local offline

subversion - tortoise svn server tutorial



Trabajar sin conexión con SVN en la máquina local temporal (7)

Estoy trabajando en un proyecto actualmente en SVN. Sin embargo, no tendré acceso a Internet durante unos días y estaré trabajando en mi proyecto.

¿Hay alguna forma de hacer un clon del repositorio en mi máquina local, realizar cambios en él, y cuando accedo a internet, los "puse" en el repositorio compartido? Pensando en términos de Mercurial aquí, ¿vale la pena migrar por completo?


Descargo de responsabilidad: Soy el autor de SOS (SVN Offline Support).

Escribí esta herramienta de línea de comandos fácil de usar para resolver exactamente el problema de trabajar con SVN sin conexión, pero funciona no solo en las comprobaciones de SVN, sino en cualquier copia de trabajo de VCS (por ejemplo, Bazaar, Git, fósil) o incluso en un archivo sin seguimiento arboles SOS permite operaciones simples de confirmación, bifurcación, cambio / actualización, sin el conocimiento de fondo semántico complejo que requiere el VCS tradicional. Después de volver a estar en línea, puede integrar todos los cambios a su VCS subyacente.

Sitio web

La instalación requiere un Python 3, y se maneja a través de pip install -U sos-vcs


He estado usando git en un proyecto que usa SVN por la misma razón que describiste anteriormente. Se está acostumbrando a git / mercurial, pero después de un tiempo realmente me gusta el nuevo enfoque. Además, nunca tuve problemas con el uso de git-svn, nunca he probado mercurial y svn ..

Si estás en Mercurial y todavía estás buscando un buen tutorial con una o dos risitas en medio, echa un vistazo a este tutorial escrito por Joel Spolsky. Y como se mencionó anteriormente, seguramente es una gran oportunidad para comenzar con DVCS.


Jejeje, ¡un buen momento para descubrir tutorial o git por ti mismo!



Siempre hay SVK también. Sin embargo, no lo he usado en años, así que ya no estoy seguro de qué tan bien funciona.


Una respuesta ridícula sería migrar a otra herramienta de control de versiones, ¡sin ofender!

Tuve el problema exacto
He estado usando SVN en mi servidor "real" donde está el repositorio "real".
Cuando salí con mi computadora portátil, sin Internet simplemente duplicaría el repositorio "real" en esta computadora portátil (VisualSVN + TortoiseSVN), trabajaría en ella, cambiaría / cometeré lo que sea, y cuando regrese simplemente "sincronizará" la nueva ''revisión'' Archivos al repositorio "real".

Para ser un poco más claro: tenga dos servidores SVN, uno localmente en su computadora portátil (el clon ) y otro en su servidor "real" (obviamente). Sólo sincroniza entre los dos.


Su problema me suena como el caso de uso de git-svn :

  • configura tu repositorio Git: git svn clone http://svn.example.com/project/trunk
  • Mientras estés en línea, confirma tus cambios a SVN
  • antes de desconectarse, haga un git svn rebase para sincronizar su repositorio Git con el repositorio SVN
  • estando desconectado, cometa con el repositorio de Git usando git commit
  • cuando vuelva a estar en línea, haga un git svn dcommit para git svn dcommit sus cambios al repositorio de SVN

¡Estoy usando este flujo de trabajo diariamente!

Tienes dos grandes ventajas al hacerlo:

  • su historial completo de SVN está respaldado en el repositorio de Git y en cada repositorio de Git que se clona a partir de ese
  • mientras está fuera de línea, puede ver los mensajes de confirmación, verificar otras sucursales, etc.