2009-05-05 9 views
6

¿Cuál es la mejor práctica para mantener un repositorio de código fuente que automáticamente (o, al menos, de manera predeterminada) rechaza la inclusión de archivos/bin,/obj, * .suo, etc.?¿Forma correcta de integrar el control de fuente SVN y Visual Studio .NET 2005/2008?

¿Debería exigirse a cada desarrollador que establezca una lista de patrones "global ignore" para su instalación de cliente SVN? [Esto parece una exclusión demasiado amplia.]

O, ¿debería mantener el mantenedor de repositorio de origen cada archivo y directorio ofensivo con un SVN: excluir? [Esto parece consumir demasiado tiempo.]

¿O hay otra forma de hacerlo? ¿Es posible con SVN crear listas de ignorar que son específicas del nivel de la carpeta?

Respuesta

2

Establezca la propiedad svn:ignore en directorios que contienen archivos/directorios que desea ignorar. Es un trato único.

+0

¿Puede el desarrollador agregar explícitamente un archivo/tipo/directorio ignorado de su copia de trabajo? Por ejemplo, cuando configura el patrón de ignorar en TortoiseSVN, ya no verá ninguno de esos tipos de archivos en el cuadro de diálogo. Sin embargo, puede ir explícitamente al archivo en el explorador, hacer clic con el botón derecho y agregarlo. ¿El establecimiento de la propiedad svn: ignore se comporta de manera similar o puede literalmente * nunca * agregar un elemento ignorado? –

+0

Además, ¿puede agregar explícitamente * recursivamente * incluso con un conjunto de patrones svn: ignorar? Por ejemplo, si está agregando una biblioteca de terceros y desea que incluya todo (por ejemplo, .dlls incluidos) al incorporarla inicialmente en su proyecto, pero para posteriores confirmaciones, desea que vuelva a ignorar (por ejemplo, don Incluya elementos que haya compilado posteriormente). La única forma en que puedo lograr esto con TortoiseSVN usando el patrón de ignorar global es deshabilitarlo temporalmente, realizar el agregar/confirmar y luego volver a habilitarlo. Hacerlo de esta manera con svn: ignorar sería significativamente más difícil. –

2

Actualmente usamos un patrón de ignorar global obligatorio en el lado del cliente, que es menos que ideal como ha señalado. Al menos tenemos un documento para configurar y configurar el entorno de desarrollo, que incluye el último patrón de ignorar autorizado (como este Best general SVN Ignore Pattern?).

Tengo curiosidad sobre el comportamiento de svn: ignorar como sugirió Romain Verdier. He publicado un comentario a su respuesta.

-1

Sugiero que utilice Ankhsvn. Hará todas estas cosas por ti.

+0

No creo que maneje patrones de ignorar automáticamente para cada cliente del repositorio de control de fuente como James está pidiendo. Ankhsvn maneja el patrón de ignorar/lo das /, al igual que TortoiseSVN, lo que significa que cada desarrollador debe configurar Ankhsvn para usar el patrón adecuado, que es lo que James está tratando de evitar. –

Cuestiones relacionadas