2009-11-02 15 views

Respuesta

3

La respuesta corta a partir de Visual Studio 2008 parece ser que no.

1

Cuando dos personas han cambiado el mismo archivo, debe "fusionar" el código. Esto puede tomar tres formas:

  • Mantenga su versión (descartando los cambios)
  • mantener su versión (descartando los cambios)
  • fusión de ambas cambios para que se mezclen los dos juntos

Puede 't' apagar esto ', porque no hay otra forma segura de resolver el choque.

Lo más cerca que se puede llegar a convertir la fusión es no permitir múltiples registros (bloquear el archivo para que solo un desarrollador pueda trabajar en él a la vez). Esto evita que ocurran dos ediciones simultáneas, y por lo tanto evita el problema de fusionarse por completo. (Al costo adicional de los desarrolladores a menudo se les bloquea y no pueden trabajar en un archivo mientras que otro desarrollador tiene el bloqueo). Esta es una manera horrible y usualmente ineficiente de trabajar, no lo recomendaría.

Puede minimizar la necesidad de fusiones:

  • Fecha de frecuencia. Muchos pequeños cambios reducen su exposición a conflictos de fusión, mientras que algunos cambios grandes aumentan su exposición.
  • Dividir archivos grandes y cambiados a menudo en muchos archivos más pequeños para minimizar la posibilidad de que 2 desarrolladores necesiten forzar el mismo archivo al mismo tiempo
  • Antes de empezar a trabajar en un archivo, verifique si alguien más lo está editando , y trate de reorganizar su "programación" para que no tenga que comenzar a editar ese archivo mientras el otro programador está trabajando en él (un "bloqueo suave" autoimpuesto, para reducir la posibilidad de que se necesiten fusiones)

También puede actualizar las herramientas de fusión. La fusión de Visual Studio es horrible, es difícil de usar y, a menudo, presenta problemas en el código. Me ha mordido tantas veces que no puedo confiar en él, así que tengo que hacer fusiones manuales dolorosas todo el tiempo. Ahora uso Araxis Merge, que siempre realiza una combinación automática a la perfección, lo que me da la confianza de que puedo dejarlo para hacer la fusión por mí. (Nunca he usado otro programa de fusión que me dé esa confianza, y he intentado casi todas las demás opciones a lo largo de los años). Cuando se requiere una fusión manual, ofrece una vista de fusión muy clara para "leer", y una interfaz de usuario muy rápida e intuitiva para elegir cómo fusionar cada bit de código, lo que lo hace muy eficiente. Una vez tuve problemas durante 3 días con una fusión compleja en VS (corrompiendo el código varias veces hasta que me rendí) y luego compré Araxis Merge y rehice la fusión completa en 15 minutos. Una buena herramienta realmente le quita el dolor a la fusión.

(no estoy afiliado con Araxis de ninguna manera, simplemente no puedo soportar la mayor parte de las herramientas de combinación de terribles por ahí)

+9

No deseo quitar la capacidad de fusión. Solo quiero desactivar la "característica" de fusión automática porque tiende a hacerlo terriblemente. Básicamente lo quiero así que siempre haré una fusión manual. –

+0

Ya lo tengo configurado para realizar fusiones manuales en Winmerge, lo que hace que las fusiones manuales sean casi indoloras. –

+1

Ah. En ese caso, disculpas por no ser de mucha ayuda. Me temo que comparto tu queja (¡la cantidad de diálogos que tienes que trabajar para pasar de ida y vuelta la fusión entre VSTS y la herramienta de fusión es tan frustrante, tediosa y demorada!) Tan pronto como tenga algo de tiempo libre, Creo que voy a escribir un front-end de reemplazo para TFS, porque el MS (para usar el término técnico) realmente apesta. –

107

try ¿el siguiente:

VS 2012 -> Herramientas -> Opciones -> Origen del control -> Visual Studio Team Fou ...-> Desmarque "Intento de resolver automáticamente los conflictos cuando se generan"

+0

Creo que el usuario aquí quiere para deshabilitar la capacidad de fusionarse automáticamente por completo. Supongo que basándome en el hecho de que la opción que mencionas no existía cuando se escribió esta pregunta ... –

+1

Esto nos funcionó para VS2012 + TFS2012. – SarjanWebDev

+0

Solo en caso de que necesite un enlace ..ver esta publicación http://www.donovanbrown.com/post/2013/01/31/I-dont-trust-2012-Auto-merge-but-it-does- it-automatically- – Amitd

Cuestiones relacionadas