2016-01-26 24 views
5

Podczas korzystania z Git wewnątrz Intellij, w jaki sposób mogę zgnieść wszystkie moje zatwierdzenia dla lokalnego oddziału? Jakie ustawienia używam w oknie gałęzi rebase?Intellij - jak tylko rozgrupować lokalny oddział

Próbowałem ustawić Onto na local/master i From na moją gałąź, ale potem idzie i próbuje połączyć główne zmiany do mojej gałęzi dla każdego zatwierdzenia, które zrobiłem, nawet, gdy zazwyczaj zmieniam moją gałąź na master co rano ... więc nie powinno być konfliktów. Jednak prawie zawsze znajduje konflikty i powoduje problemy z łączeniem. TYLKO chcę zgniatać zatwierdzenia oddziału i wiadomości, więc kiedy popycham do Github, widzi tylko jeden.

enter image description here

+1

@NikZ Znalazłem to odpowiedź bardzo pomocny zgnieść lokalnie przed naciśnięciem [Połącz zobowiązuje się jednym naciśnięciem] (http://stackoverflow.com/questions/26898511/how-to-combine-group-of -local-commits-to-single-push-in-idea) –

Odpowiedz

8

To może być trochę niewygodne, ale można użyć notacji git głowy ~ więc w „onto” field chcesz napisać ilość zobowiązuje chcesz dołączyć jak:

W tym przykładzie mam 4 (ostatnia 4) zobowiązuje chcę połączyć w 1.

rebase interactive dialogue

W otwarciu dialogowe wpisy ar Wymienione w kolejności, więc potrzebujesz , aby zgnieść wszystko po pierwszym z dropboxem. (Zrobiłem pierwszy się przeredagować, ale to nie jest potrzebne, ponieważ nie będzie wiadomość, zmiana dialogowe dla anyway zgniatanie, dzięki czemu może być pozostawiona na „odbiór”)

squashing

wtedy tylko nowy wiadomość dla połączonego zatwierdzenia i gotowe.

commit message