2009-09-15 22 views
31

Estoy considerando migrar de Subversion a Git en el trabajo, y me gustaría obtener opiniones sobre la mejor manera de configurar Git en Windows, y cualquier problema que pueda surgir de la combinación de Visual Studio y Git.¿Mejores prácticas usando Git con Visual Studio?

La configuración actual es TortoiseSVN, con Visual Studio 2008 y AnkhSVN para aplicaciones .NET. El reemplazo probablemente sería Git Extensions.

Se agradecerán especialmente los consejos sobre diseños de repositorios. Todas nuestras soluciones usan múltiples proyectos, y ahora tenemos una cantidad de conjuntos personalizados que necesitaremos compartir entre aplicaciones. El diseño actual de nuestros repositorios Subversion definitivamente no es óptimo.

ACTUALIZACIÓN: ahora he migrado a Git usando extensiones de Git, y está funcionando muy bien. El código compartido y los activos viven en repositorios separados y se usan como submódulos. Encontré los submódulos un poco confusos cuando comencé, y this post fue muy útil.

Respuesta

6

Tenemos una solución que contiene 9 proyectos & estamos usando las extensiones de git (viniendo de la pila svn).

Tres de los proyectos se comparten con otras soluciones y hemos utilizado submódulos para hacer referencia a ellos.

Esto funciona, pero la interfaz es muy confusa. De ahora en adelante, estamos pensando en eliminar los submódulos y solo hacer referencia a los dlls en su lugar.

0

estoy usando msysgit, es bastante agradable =)

Para las extensiones de Git, no me gusta mucho, ya que me siento más cómodo con los comandos de línea de comandos ... Pero el "archivo histórico" característica de extensiones de Git es impresionante

10

El instalador principal de Git para Windows es msysgit (SO question).
TortoiseGit es también una buena integración de Windows (en la parte superior de msysgit).

Necesita ser consciente de Git limits, sobre todo en términos de repositorio Git (no trate de cosas todos los proyectos en una cesión temporal, a menos que usted está construyendo un "sistema", es decir, algo que sólo puede funcionar con todo su partes/componentes.)

Las dependencias de código externo se representan mejor with submodules.
Lo mismo para vendor branches.


Tenga en cuenta también que, además de GitExtension, ahora se puede definir proyectos Git en TFS (Q1 2013):
Ver "How can I push my existing Git repository to Team Foundation Service": a partir VS2012.2, yo tienen los comandos git directamente desde el IDE.

Cuestiones relacionadas