Código de control de versiones cuando se desarrolla en .NET / SQL Server 2005 en una Mac

Recientemente comencé un nuevo trabajo donde el entorno de oficina está basado en Mac, pero desarrollaré en .NET y SQL Server.

Ya estoy bastante convencido de la installation de VMWare Fusion para configurar una caja virtual de XP, pero me pregunto si alguien podría recomendar una solución para el control de la versión del código. Específicamente, ¿debería instalar algo como SVN en la caja virtual, o debería configurarlo en la Mac física y mover todo el código de la máquina virtual a la Mac cada vez que deseo verificar el código? Si la última solución es mejor, ¿cuáles son algunas buenas aplicaciones de control de versiones compatibles con Mac?

Me mantendría alejado de la installation de su control de código fuente en su sistema operativo host (mac os x).

Si lo conserva en la caja de XP o en una máquina virtual adicional, de esa manera puede hacer copys de security fácilmente de esas máquinas virtuales, así como también puede usar esas máquinas virtuales en una estación de trabajo diferente O en el caso de tal vez una nueva Mac o una reconstrucción del sistema operativo host.

si mantiene la fuente en su host … su máquina virtual se vuelve dependiente de ella …

Le recomendaría que coloque su repository de control de código fuente en un server que se respalda todas las noches. Más vale prevenir que curar.

El código fuente debe colocarse en un server VCS central en alguna parte de las máquinas server de su oficina. Realmente no importa si coloca el código .NET allí o cualquier otra cosa.

El siguiente paso, creo, es instalar cygwin en el entorno virtual de XP. De esta forma, tiene herramientas de cliente de línea de command para todos los VCS comunes disponibles.

¿Estás diciendo que eres el único que usa el control de versiones? La compañía debe decidir qué usar. Hosting para SVN es barato. Ellos hacen la administración y las copys de security (y también debería hacerlo)

Me mantendría lejos del uso de computadoras de escritorio o PC para el control de versiones, incluso para tiendas de un solo hombre, es tan barato conseguir un buen hosting.

Puedes usar casi todo lo que quieras. Sin embargo, dado que está utilizando .Net, es posible que desee considerar algo que tenga un excelente soporte de herramientas. Hay muchos buenos complementos para Visual Studio para SVN o podría ir con un producto comercial como SourceGear Vault. Si solo hay una persona que lo usa, Vault es gratis para un solo usuario.

Tengo la misma situación, aunque desarrollo tanto en OSX (usando Aptana y / o TextMate) como en Windows / Parallels (usando Notepad ++ y / o Visual Studio), dependiendo de lo que esté haciendo. En mi caso, elegí un host que proporciona SVN de fábrica (Dreamhost). De esa manera puedo acceder desde cualquier lugar.

Para soporte de herramientas, Aptana se basa en Eclipse y, por lo tanto, es compatible con los complementos de eclipse. He usado tanto Subclipse como Subversive para el soporte de SVN en Aptana y ambos funcionan bastante bien (creo que actualmente estoy usando Subclipse). En Visual Studio, utilizo el complemento Ankh SVN que proporciona compatibilidad con IDE. Es un poco más raro en comparación con las herramientas de Eclipse, pero hace el trabajo bien. Si no está vinculado al soporte de IDE, entonces TortoiseSVN es definitivamente el path a seguir en Windows (para SVN).

Por supuesto, hay muchas otras soluciones VCS (Git parece ser el sabor del mes en estos días). Me gusta SVN porque es sencillo y ha existido lo suficiente como para tener un soporte de herramientas realmente bueno. Lo que sea que elija, definitivamente aloje su código maestro en algún lugar fuera de su máquina física. Como otros han notado, si su máquina explota, perderá todo su código junto con sus máquinas virtuales. No instale un VCS maestro en su máquina virtual: el objective de las máquinas virtuales es que sean fáciles de desechar / recrear.