Repositorio de control de fuente local: plataforma cruzada

Estoy buscando un software de control de fuente 'local', no necesito que esté necesariamente disponible en la networking. Su propósito es solo para uso personal. Lo que estoy buscando es algo así como:

Necesito que sea multiplataforma. El mayor problema es que necesito el mismo repository local para estar disponible tanto en Windows como en Linux. (¿Es esto posible?: S) Tengo un arranque dual de Windows 7 y Ubuntu y he logrado configurar el espacio de trabajo que funciona en ambos sistemas operativos sin cambios, ¡ahora necesito un software de control de fuente!

Instalación fácil, ¡nunca antes había instalado uno! 🙂

Y tiene un plugin eclipse …

He utilizado VSS para este fin antes, ¡pero eso solo en Windows! Busqué Mercurial, pero no estoy seguro de si puedo usar el mismo repository en ambos sistemas operativos. ¡Cualquier sugerencia es apreciada!

ACTUALIZACIÓN: Gracias por sus respuestas. Sí, sí quiero que se acceda al mismo repository desde diferentes sistemas operativos. Todos han sugerido un repository en línea, pero 'necesito que sea local'. Internet no es algo de lo que pueda depender en (ahora sé que git se ocupa de esto …! :)), no me gustaría que la versión de, por ejemplo, mis grabaciones personales de algunas funciones caseras modificadas con audacia, se aloje en línea. En este momento, estoy probando git, como una solución de repository local ..

Estoy bastante seguro de que puedes Mercurial, ya que todo el repository está en la carpeta .hg. Pruebe TortoiseHG : es fácil de instalar y usar.

Si definitivamente quieres un repository que esté siempre disponible en un sistema de files local, probablemente prefiera Mercurial o Git. Muy probablemente Mercurial, ya que tiene el mejor soporte para Windows (incluido el gui de TortoiseHg), pero Git funciona de manera similar.

Pero hay otros dos problemas:

  1. ¿Hace copys de security frecuentes?
  2. ¿Qué tipo de sistema de files utilizará para el repository compartido?

En este caso particular, no confiaría en un solo sistema de files compartido como la mejor canasta para poner tus huevos; En cada entorno de arranque, mantendría depósitos de trabajo separados del compartido. Esto te daría algo de networkingundancia.

Así es como esto funcionaría:

Dos repositorys U y W, para Ubuntu y Windows respectivamente, y un repository compartido S, accesibles desde cualquier entorno de arranque.

Asumiendo una situación estable, con los tres repositorys sincronizados:

  1. Confirme cualquier código nuevo en el repository U en Ubuntu.

    $ hg commit -m 'changes from linux'

  2. Presione los cambios a S.

    $ hg push

  3. Reinicia en windows.

  4. Tire de los últimos sets de cambios de S a W

    W> hg fetch

  5. Actualiza tu código, cometer frecuentemente

  6. Empuje antes de reiniciar en Linux

    W> hg push

  7. Reiniciar

  8. Y repite el paso 4, pero ahora desde Linux

    $ hg fetch # realiza una extracción de hg, seguida de una actualización.

  9. Enjuague, haga espuma, repita.

Dicho esto, con Mercurial y Git, puedes sincronizar tus repositorys a través de la networking en cualquier momento, así que seguramente te recomendaría que lo pruebes algún time.

Y tenga en count que la mejor copy de security es tener una copy de sus datos en un sistema de files en vivo en otra computadora, preferiblemente en otra location.

¿Por qué quieres que sea local? El beneficio del control de código fuente es que puede tener varios clientes trabajando en la misma fuente, sin preocuparse demasiado por conflictos, etc.

Aunque realmente no responde a su pregunta, estos consejos pueden resolver su problema: simplemente cree un proyecto para usted en https://github.com/ o http://sourceforge.net/ cualquier otro proveedor de alojamiento de repository en línea gratuito. SVN, CVS, GIT vienen con una excelente integración IDE y los clientes se ejecutan en casi todos los sistemas operativos.

Espero que esto ayude. Saludos.

¿De verdad quieres tener un repository duplicado en diferentes sistemas operativos? Eso no tiene sentido para mí. ¿Cuál sería el propósito de hacer eso?

Creo que en su lugar desea tener un único repository al que pueda acceder desde cualquier sistema operativo.

En este caso, puede instalar Subversion (o el sistema de control de fuente que prefiera) en un server y acceder desde los sistemas operativos que usa. Hay muchas herramientas de cliente para Mac / Windows / Linux que pueden hablar con repositorys de subversión, RapidSVN es gratuito y multiplataforma para uno.

Si no tiene su propio server, hay muchos sitios en línea que alojarán Subversion por usted.