2013-05-30 19 views
15

Próbuję dodać repo (o nazwie krowa) do mojego projektu za pomocą git subtree add. W szczególności chciałbym dodać gałąź stable (która nie jest gałęzią master). Próbowałem:Dodawanie poddrzewa git z oddziału

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

Ale ten zwrócił błąd

'stable' does not refer to a commit. 

Próbowałem również:

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

oraz:

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

Haszysz było to, że za ostatni popełnić w oddziale stable. Przykłady użycia, które widziałem w Internecie, wszystkie używają master do zatwierdzenia, czy można użyć subtree add na gałęzi innej niż główna?

Odpowiedz

24

To wydaje się działać

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

Nie rozumiem jak używać bezpośrednio polecenia z repozytorium części.

+1

To wystarczy! Dzięki :) –

+0

Ale to zanieczyszcza repo rodzica z grupą niechcianych commitów z repo krowy ...: -/ –

+0

które są niechcianymi zobowiązaniami? – gipi

0

Mam podobny problem. Jednak rozwiązanie gipi nie działa dla mnie. Dziwnie, kiedy dodać gałąź master everythins jest w porządku, ale gdy chcę dodać inne branże, zwraca

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

Spróbowałem więc inaczej:

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

And subtree add z Master gałąź Temp rep za :

git subtree add -P yyy /path/to/tmp/ master 
Powiązane problemy