Rozwiązywanie konfliktu
Część sekcji Kontrola wersji ścieżki Terminal w Coddy. Lekcja 38 z 58.
Przerwanie czasem jest właściwym rozwiązaniem, ale najczęściej chcesz naprawdę rozwiązać konflikt i dokończyć scalanie.
Rozwiązywanie konfliktu to trzyetapowy rytuał:
- Otwórz plik zawierający konflikt. Zastąp blok znaczników wybraną wersją (lub ich kombinacją).
- Dodaj rozwiązany plik do poczekalni za pomocą
git add. - Zakończ scalanie za pomocą
git commit.
Możesz użyć skryptu, aby bezpośrednio nadpisać plik rozwiązanymi zmianami — dokładnie to zrobisz w tej lekcji (edytor nie będzie potrzebny).
Jeśli zapomnisz wykonać git add dla rozwiązanego pliku, zatwierdzenie nie powiedzie się i pojawi się informacja, że plik nadal jest oznaczony jako nierozwiązany.
Wyzwanie
ŚredniPrzygotuj konflikt w pliku notes.txt dokładnie tak jak w poprzedniej lekcji:
- Początkowy commit w gałęzi
mainz zawartościąhello - W gałęzi
alt: zmień nahi from alti utwórz commit - Wróć do gałęzi
main: zmień nahi from maini utwórz commit - Uruchom
git merge alt(wystąpi konflikt)
Rozwiąż konflikt, nadpisując plik notes.txt wierszem hi from both. Dodaj plik do obszaru przejściowego i sfinalizuj scalanie, używając komunikatu Resolve notes. Wyświetl końcową zawartość pliku notes.txt.
Spróbuj swoich sił
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Kontrola wersji
4Przeglądanie zmian
Git DiffRóżnice w zmianach w poczekalniGit ShowPodsumowanie – praca detektywistyczna2Pierwsze kroki
Inicjalizacja repozytoriumFolder .gitKonfiguracja tożsamościStatus GitPodsumowanie — pierwsze repozytorium5Ignorowanie plików
Dlaczego ignorować plikiWzorce GitignoreSprawdzanie reguł ignorowaniaPodsumowanie — czyste repozytorium8Scalanie
Czym jest scalanieScalanie typu fast-forwardScalanie trójstronneKonflikty scalaniaRozwiązywanie konfliktuPowtórka — mistrz scalania11Projekt z gałęzią funkcjonalności
Przegląd projektuZainicjuj gałąź main3Śledzenie zmian
Obszar przygotowaniaGit AddGit CommitModyfikowanie śledzonego plikuGit LogPodsumowanie — pierwsze commity6Projekt strony z przepisami
Omówienie projektuInicjalizacja i ignorowanie plikówPoćwicz samodzielnie: Edytor online Terminal