Можно ли отключить параметр автоматического слияния в Visual Studio Team System 2008? Если так, то как? - PullRequest
63 голосов
/ 02 ноября 2009

Я бы хотел отключить функцию автоматического слияния при проверке файла в TFS, над которым работал другой разработчик, поэтому мне всегда нужно объединять вручную. Есть ли способ сделать это?

Ответы [ 3 ]

118 голосов
/ 14 февраля 2013

Попробуйте сделать следующее (работает во всех версиях Visual Studio начиная с 2012 года):

Инструменты -> Параметры -> Контроль исходного кода -> Visual Studio Team Foundation Server -> Снимите флажок «Попытаться автоматически разрешать конфликты при их создании»:

enter image description here

3 голосов
/ 05 ноября 2009

Краткий ответ на Visual Studio 2008, кажется, нет.

1 голос
/ 02 ноября 2009

Когда два человека изменили один и тот же файл, вы должны «объединить» код. Это может принимать три формы:

  • Сохраните свою версию (отменив их изменения)
  • Сохранить их версию (отменить ваши изменения)
  • Объедините оба изменения, чтобы смешать их вместе

Вы не можете "отключить это", потому что нет другого безопасного способа разрешения конфликта.

Самое близкое к отключению слияния можно запретить несколько проверок (заблокируйте файл, чтобы над ним одновременно мог работать только один разработчик). Это предотвращает два одновременных редактирования и, таким образом, устраняет проблему слияния полностью. (За дополнительную плату разработчики часто блокируются и не могут работать с файлом, в то время как другой разработчик имеет блокировку). Это ужасный и обычно неэффективный способ работы - я бы его не рекомендовал.

Вы можете минимизировать необходимость слияний:

  • Заходите часто. Множество небольших изменений уменьшают вашу подверженность конфликтам слияний, а несколько крупных изменений увеличивают вашу подверженность.
  • Разделение больших и часто изменяемых файлов на множество файлов меньшего размера, чтобы минимизировать вероятность того, что двум разработчикам потребуется изменить один и тот же файл одновременно
  • Перед тем, как начать работу с файлом, проверьте, редактирует ли его кто-то еще, и попытайтесь реорганизовать ваше «расписание», чтобы вам не пришлось начинать редактирование этого файла, пока другой программист работает над ним (самостоятельно -наложенный "мягкий замок", просто чтобы уменьшить вероятность необходимости слияния)

Вы также можете обновить инструменты слияния. Слияние Visual Studio ужасно , сложное в использовании и часто вносит проблемы в код. Это укусило меня так много раз, что я никогда не мог доверять этому, поэтому приходится каждый раз делать болезненные ручные слияния. Теперь я использую Araxis Merge, который всегда выполняет автоматическое слияние, что дает мне уверенность в том, что я могу просто оставить это, чтобы выполнить слияние для меня. (Я никогда не использовал другую программу слияния, которая придала бы мне такую ​​уверенность, и я пробовал почти все остальные варианты в течение многих лет). Когда требуется ручное слияние, оно предлагает очень четкое представление слияния для «чтения» и очень быстрый и интуитивно понятный интерфейс для выбора способа слияния каждого бита кода, что делает его очень эффективным. Однажды я боролся в течение 3 дней со сложным слиянием в VS (повредил код несколько раз, пока я не сдался), затем я купил Araxis Merge и заново полностью выполнил слияние за 15 минут. Хороший инструмент действительно избавляет от слияния.

(я никоим образом не связан с Araxis, я просто не могу выносить большинство ужасных инструментов слияния)

...