Отдельные клоны или отдельные ветви - PullRequest
2 голосов
/ 11 января 2012

Привет, ребята: Я не особо взволнован git-ветками, но моя организация активно ими пользуется.В любом случае мне нужно работать на ветке головы.В прошлом я «переключал» ветки при разработке в одном месте, однако я чувствую, что это сбивает с толку.

Обычно / идиоматично в git просто иметь две отдельные директории git, одну для branch1, а другую для branch2?

Или

Более распространено ли иметь один рабочий каталог, переключающийся между ветвями в этом каталоге.

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

Ответы [ 3 ]

4 голосов
/ 11 января 2012

очень часто для переключения между ветвями . Если у вас есть несохраненные изменения, используйте git stash команду (см. В документации).

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

2 голосов
/ 11 января 2012

Git упрощает ветвление - используйте ветки.

Наличие одного каталога на ветку крайне неэффективно: это означает, что у вас есть два репозитория git, и вам нужно синхронизировать оба.1004 * Среди других тонкостей, когда вы переключаете ветви (используя git checkout branchname), git будет переписывать только те файлы, которые меняются между двумя ветками .Это НАМНОГО более эффективно, чем механизм, когда вам нужно управлять n каталогами.

Если вы хотите создать ветвь вне мастера, просто git branch newbranch master и git checkout newbranch - или в одной команде git checkout -b newbranch master.

1 голос
/ 11 января 2012

Идея переключения ветвей в каталоге one поддерживается:

  • высокая частота слияний между ветвями , что означает:
    • дельта между вашими обычными ветвями не очень важна
    • вследствие этой маленькой дельты сам коммутатор очень (очень) быстр)

.

  • стоимость , связанная с определением новой среды для другого пути (что означает ваши проекты IDE - Eclipse или Visual Studio - и другие файлы конфигурациивозможно, придется настроить новый путь.
    Если все сделано в одном каталоге, вы определяете свою среду разработки только один раз.
...