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

У меня есть несколько активных ответвлений, что я должен продолжить работать одновременно. Очевидно я могу создать два рабочих каталога с отличным ответвлением на каталог. Это - единственный способ сделать это, не имея необходимость "фиксировать" и "контроль" для переключения от одного ответвления до другого?

20
задан Richard 16 June 2010 в 16:59
поделиться

4 ответа

Да, хотя вы можете использовать git stash вместо commit, если вы не готовы завершить текущую работу.

20
ответ дан 29 November 2019 в 23:16
поделиться

Если вы временно переключаете ветки, git stash полезен, однако помните, что фиксации не обязательно должны сохраняться вечно; вы можете сделать временные коммиты, чтобы откатиться позже.

Поэтому я рекомендую, если это многочасовое переключение, вместо этого выполнить git commit , потому что, в зависимости от вашей памяти, тайники можно легко забыть / потерять и т. Д.

[In MyBranch]
>$ git commit -m "WIP: Stuff I was working on."
>$ git checkout AnotherBranch
[Do Stuff]
>$ git checkout MyBranch
>$ git reset HEAD^
[Continue]

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

21
ответ дан 29 November 2019 в 23:16
поделиться

git clone через локальный протокол является хорошей альтернативой для одновременной работы с несколькими ветвями.

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

5
ответ дан 29 November 2019 в 23:16
поделиться

Если вы делаете то, что называется разработкой ветвей на каждую функцию, как описано здесь:

http://martinfowler.com/bliki/FeatureBranch.html

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

Дополнительные сведения см. В книге Pro Git .

1
ответ дан 29 November 2019 в 23:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: