Добавление поддерева git из ветви

Я пытаюсь добавить РЕПО (называемое cow) в свой проект, используя git subtree add. В частности, я хотел бы добавить ветку stable (который не master филиал). Я попробовал:

git subtree add -P cow https://github.com/geoffryan/cow.git stable

эта ошибка

'stable' does not refer to a commit.

я тоже пробовал:

git subtree add -P cow https://github.com/geoffryan/cow.git cow/stable
'cow/stable' does not refer to a commit.

и:

git subtree add -P cow https://github.com/geoffryan/cow.git ca26d248a12c21264e32a2c212381cafb578c9fb
'ca26d248a12c21264e32a2c212381cafb578c9fb' does not refer to a commit.

хэш был для последней фиксации в stable филиала. Примеры использования я видел онлайн Все использовать master для фиксации, можно использовать subtree add на ветку master?

2 ответов


Это, кажется, работает

$ git remote add cow https://github.com/geoffryan/cow.git
$ git fetch cow
$ git subtree add -P cow cow/stable
Added dir 'cow'

Я не понимаю, как использовать непосредственно команду с репозиторием часть.


я сталкиваюсь с подобной проблемой. Однако решение gipi не работает для меня. Как ни странно, когда я добавляю master branch everythins, все в порядке, но когда я хочу добавить другие ветви, он возвращает

fatal: Couldn't find remote ref xxx/yyy
Unexpected end of command stream

поэтому я попробовал другой способ:

mkdir tmp
cd tmp
git init
git clone url_for_xxx.git yyy

и subtree add из главной ветви этого temp rep:

git subtree add -P yyy /path/to/tmp/ master