Sprzątanie po skonfliktowanym połączeniu Gita?

Miałem mały konflikt w pliku nagłówkowym .h w projekcie, nad którym pracuję. Ten projekt jest śledzony w Git.

Na szczęście konflikt był bardzo prosty do rozwiązania. Użyłem

git mergetool

I wybrał domyślną (opendiff), która wydawała się FileMerge na moim Macu. Dokonałem odpowiednich zmian, zapisałem plik i zamknąłem.

Git zapytał mnie, czy połączenie się powiodło, odpowiedziałem tak:

Was the merge successful? [y/n] y

Ale teraz mam:

> git st
# On branch develop
# Changes to be committed:
#   modified:   MyHeader.h
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   MyHeader.h.BACKUP.52920.h
#   MyHeader.h.BASE.52920.h
#   MyHeader.h.LOCAL.52920.h
#   MyHeader.h.REMOTE.52920.h
#   MyHeader.h.orig

Który z tych dodatkowych pliki junk conflict zostały utworzone przez FileMerge, a które przez Git?

i co ważniejsze: jak je usunąć?

Author: Craig Otis, 2013-03-13

3 answers

Możesz je po prostu usunąć, tak jak każdy inny plik. Na przykład:

rm MyHeader.h.orig

Alternatywnie, jeśli nie ma innych nie śledzonych plików, to po zatwierdzeniu za pomocą

git commit -a

Możesz wyczyścić swoje repozytorium za pomocą

git clean -n
git clean -f

git clean -n powie Ci, co git clean -f zrobi, więc możesz być pewien, że tego chcesz.

 44
Author: Neil Forrester,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-12 23:09:03

Jeśli są to jedyne nie śledzone pliki, możesz użyć git clean, aby je usunąć. Uruchom go raz z flagą -n, aby zobaczyć, co zostanie usunięte, a następnie, jeśli jesteś pewien, uruchom go z -f. Nie używaj go, jeśli nie śledzisz plików, które chcesz zachować!

 7
Author: Ben Lings,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-12 23:05:53

Najpierw Zatwierdź połączenie.

Gdy będziesz zadowolony, że wszystko jest dobrze, po prostu usuń te dodatkowe pliki ręcznie (na przykład za pomocą rm <filename>).

 1
Author: Brent Faust,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-12 23:12:13