Когда использовать тег / метку и когда разветвлять? - PullRequest
30 голосов
/ 12 февраля 2009

При использовании TFS, когда вы маркируете свой код и когда вы переходите?

Есть ли в TFS концепция магистрали / магистрали?

Ответы [ 4 ]

45 голосов
/ 12 февраля 2009

Метка в TFS - это способ пометить коллекцию файлов. Метка содержит кучу файлов и версию файла. Это очень дешевый способ пометить, какие версии файлов составляют сборку и т. Д.

Ветвь можно рассматривать как копию файлов (определенной версии) в другом каталоге в TFS (при этом TFS знает, что это ветвь и будет помнить, какие файлы и версии были ветвью).

Как говорит Эрик Синк, ветка похожа на щенка . Требуется некоторая забота и кормление.

Лично я маркирую часто, но редко. Я создаю метку для каждой сборки, но только ветвь, когда я знаю, что мне нужно работать с исторической версией или что мне нужно работать отдельно от основной строки кода. Вы можете создать ветку в любой момент времени (а также метку), чтобы она работала хорошо и означала, что у нас нет ветвей, которые не используются.

Надеюсь, это поможет,

Martin.

11 голосов
/ 07 декабря 2011

Андрей утверждает, что маркировка ленивее, чем ветвление; это на самом деле более эффективно в большинстве случаев, а не ленивый. Маркировка может позволить пользователям захватывать проект в любой момент времени, сохранять историю файлов, измененных для версии или сборки, и отделяться от кода / работать с кодом в любой момент, а затем объединяться с основной веткой. Вместо того, что сказал Эндрю, советуем выполнять ветвление только тогда, когда требуется более одного набора двоичных файлов - когда одновременно ведется разработка QC и Dev или когда вам необходимо применить исправление, например, к старой версии.

11 голосов
/ 12 февраля 2009

В любой VCS обычно помечают, когда вы хотите, чтобы моментальный снимок кода был сохранен как ссылка на будущее. Вы переходите, когда хотите разработать новую функцию, не нарушая текущий код.

2 голосов
/ 12 февраля 2009

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

Тем не менее, ветвление очень мощное, и о нем стоит кое-что узнать. TFS не лучший источник контроля, но и не худший. TFS поддерживает концепцию магистрали, из которой также прорастают все ветви.

Я бы порекомендовал это как хорошее место для ознакомления с лучшими практиками - по крайней мере, в отношении TFS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...