Существуют ли локальные коммиты в TFS?

Поддерживает ли TFS локальные коммиты?

Другими словами: могу ли я

  • изменить код,
  • сделать локальную фиксацию (без совместного использования этих изменений с другими),
  • проверьте мои модификации и
  • Если мои изменения ничего не сломают, сделайте глобальную фиксацию (после этого мои изменения доступны другим разработчикам)

в TFS 2012?

Если это не так, есть ли способы обхода, которые позволяют использовать эту функциональность?

Ответ 1

Нет, это не поддерживает это, однако у него есть несколько альтернатив, которые вы можете использовать вместо этого.

1) Филиалы - все разработчики работают в своем собственном филиале, затем сливаются с trunk/main, когда они довольны своими изменениями.

2) Shelveset - разработчики откладывают любые изменения, которые они еще не хотят совершать. Это позволяет вам отменить изменение или передать его другому разработчику в команде, не теряя изменения или проверки в основной ветке.

3) Gated Checkins + Unit/Automated tests. Каждый раз, когда разработчик проверяет, TFS автоматически откладывает изменения и запускает сборку tfs + любые связанные тесты (единицу или автоматическую). Если все удастся, то оно проверено. Я не считаю, что это поддерживает ручные тесты.

или сочетание всего вышеперечисленного.

Ответ 2

TFS не поддерживает это самостоятельно.

Однако! Microsoft выпустила интеграцию Git с TFS. Брайан Гарри сообщил об этом: Объявление Git Интеграция с TFS пару недель назад.

Используя эту настройку, вы можете использовать Git для своих локальных коммитов, а затем передать ее Team Foundation Server.

Ответ 3

Не для исходной версии TFS (пока), но по состоянию на январь 2013 года Microsoft размещала Team Foundation Service с поддержкой Git, которая явно поддерживает локальные коммиты.

http://tfs.visualstudio.com/en-us/news/2013-jan-30.aspx#git%20support