2014-12-28 2 views
0

Ситуация: проект с открытым исходным кодом с несколькими ветвями и мой вилок для вкладов. Я хочу создать новую ветку для запросов на github. Я хочу основать эту ветку на одном из существующих ветвей в проекте с открытым исходным кодом, НО Я НЕ хочу, чтобы мои коммиты вошли в эту исходную ветвь.git создать новую ветвь без слежения на основе удаленной ветви

По моему опыту, если я клонировать вилку, выполнить git checkout -b my-branch origin/some-branch, а затем совершить + толчок my-branch, в Github коммиты пойдет some-branch и не my-branch. Очевидно, это проблематично, если я хочу сделать несколько ветвей для нескольких запросов на растяжение в одной ветви.

Обходной, что я нашел для этого является следующее:

git checkout -b some-branch origin/some-branch

git checkout -b my-branch (новая отрасль на основе некоторой ветви, но не отслеживает ее)

после этого - совершать + push, первый толчок создаст my-branch на Github.

Однако это оставляет мне дополнительную локальную копию some-branch. Я могу удалить его позже, очевидно, но есть ли способ избежать его создания вообще? Есть ли способ создать my-branch, основанный на origin/some-branch, но не отслеживая его, в одной команде, без дополнительной ветви в середине?

+0

Возможно, вы захотите опубликовать, на что установлен ваш push.default, а также версию Git. Оба они могут влиять на поведение, которое вы видите, когда вы нажимаете. –

ответ

1

Использовать хэш SHA1 с тем же фиксатором вместо origin/some-branch. Пример:

git checkout -b my-branch 92fc7a2 

Помните, что ветка - это всего лишь метка на фиксации, не более того. Это 41-байтовый файл, содержащий хэш-имя SHA1 для фиксации и перевода строки.

+0

Или даже 'git checkout -b my-branch origin/some-branch^{commit}' – jthill

+0

Как вы заработали эту классную российскую ушанку? :-) – SzG

+0

Что зафиксировать? Я спрашиваю о ветвях, а не коммит ... @jthill - разве это не просто указание конкретной фиксации записи для ветви отслеживания? Я вообще не хочу отслеживать эту ветку. – jurchiks

Смежные вопросы