2011-12-29 15 views
14

Testuję wykorzystanie git-subtree do scalenia repozytorium biblioteki w większy projekt. Zasadniczo wygląda świetnie. Czasami, kiedy zrobić „git poddrzewa pull” mogę scalić konfliktów tak:Raporty git łączą konflikt bez żadnych zmian, puste wiersze (przy użyciu git-subtree)

<<<<<<< HEAD 
======= 
An inserted line from the lib repo 
>>>>>>> 4d348903449ebb584ab224cb34c6038fbf6b352d 

To dla odmiany, które zostały wykonane w repo biblioteki, wtopienie się w pliku, który nie został zmodyfikowany lokalnie. Albo inny przykład, gdzie I dodaje wiersz w lokalnym repo projektu, ale w pliku, który jest częścią poddrzewie są scalane:

<<<<<<< HEAD 
Another inserted line 
======= 
>>>>>>> 4d348903449ebb584ab224cb34c6038fbf6b352d 

Dlaczego git zgłosić je jako scalić konfliktów, ale region zgłoszone jako konflikt jest pusty? Jakikolwiek sposób temu zapobiec?

Są dość łatwe do rozwiązania, ale bałagan workflow git poddrzewa

+0

Upewnij się, że końcówki linii są takie same we wszystkich repozytoriach (Linux, Windows, Mac). – knittl

+0

Myślę, że miało to miejsce (w drugim przykładzie), gdy lokalnie zmieniony plik zmodyfikował datę laserowo niż data w wersji scalonej. –

Odpowiedz

-3

Stosować Submoduły posiadać wspólną pracę. Istnieje git-slave, jeśli wykonujesz dużo pracy z projektami współdzielonymi i niewspólnymi, które wymagają skoordynowania. Rozbieżność pamięci na końcu linii zniknie.

+0

Proszę dodać komentarze do argumentu. –

+0

Rewizję, ponieważ zapytałem o używanie git-subtree, a nie o używanie submodułów. I nie ma dowodów, że ma to coś wspólnego z zakończeniami linii. –

+0

Tak, zgadza się. Źle przeczytałem. –

1

To nie jest rozwiązanie problemu rootowego, ale raczej jego łagodzenie. możesz użyć
, aby zignorować zmiany miejsca w zatwierdzeniach.

To prawdopodobnie problem z zakończeniami linii. można spróbować --dry-run alternatywę w seryjnej (git merge nie ma --dry-run opcję):

$git merge -Xignore-space-change --no-commit --no-ff $BRANCH

aby zobaczyć zmiany, zanim faktycznie je popełnić.

Powiązane problemy