Ponowne wykorzystywanie rozwiązań konfliktów za pomocą Git Rerere
Dowiedz się, jak funkcja rerere w Git automatycznie rejestruje i odtwarza rozwiązania konfliktów podczas powtarzających się rebase’ów i scaleń.
Ponowne wykorzystywanie rozwiązań konfliktów za pomocą Git Rerere to bezpłatna lekcja Git & GitHub Professional Workflow na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Git & GitHub Professional Workflow, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Git & GitHub Professional Workflow zawiera 4 lekcji w sumie.
Czym jest Rerere?
Rerere to skrót od reuse recorded resolution. Po włączeniu tej funkcji Git zapamiętuje sposób rozwiązania konfliktu i automatycznie stosuje to samo rozwiązanie, gdy ponownie napotka identyczny konflikt.
Dlaczego Rerere pomaga
Podczas długich rebase'ów lub wielokrotnych scaleń tej samej gałęzi ten sam konflikt może pojawiać się wielokrotnie. Rerere pozwala uniknąć ręcznego rozwiązywania go za każdym razem.
Włączanie Rerere
Należy włączyć tę funkcję globalnie za pomocą jednego ustawienia konfiguracji.
git config --global rerere.enabled trueJak zapisywane są rozwiązania
Gdy wystąpi konflikt, Git zapisuje stan sprzed rozwiązania. Po naprawieniu konfliktu i dodaniu pliku do staging Git zapisuje Twoje rozwiązanie.
git merge feature
# CONFLICT in app.js
# Recorded preimage for app.jsRozwiązywanie konfliktu raz
Należy rozwiązać konflikt w zwykły sposób, a następnie dodać plik do staging. Rerere po cichu zapisze sposób rozwiązania.
# edit app.js to fix conflict
git add app.js
# Recorded resolution for app.jsAutomatyczne odtwarzanie
Gdy następnym razem pojawi się dokładnie ten sam konflikt, Git rozwiąże go za Ciebie i poinformuje o tym.
git rebase main
# Resolved app.js using previous resolutionSprawdzanie stanu Rerere
Użyj git rerere status, aby sprawdzić, które pliki mają zapisane oczekujące stany konfliktów.
git rerere statusWyświetlanie różnic
git rerere diff pokazuje, jakie rozwiązanie zostanie zastosowane, dzięki czemu można je potwierdzić przed kontynuowaniem.
git rerere diffUsuwanie zapisanego rozwiązania
Jeśli zapisano nieprawidłowe rozwiązanie, należy usunąć je dla danego pliku, aby Git poprosił o rozwiązanie ponownie przy następnym konflikcie.
git rerere forget app.jsRerere a rebase
Rerere szczególnie przydaje się podczas interaktywnych rebase'ów, w których te same commity mogą być wielokrotnie odtwarzane. Eliminuje większość powtarzalnej pracy związanej z konfliktami.
git rebase -i HEAD~10Ograniczenia
Rerere dopasowuje tylko identyczne konflikty. Jeśli otaczający kod ulegnie zmianie, zapisane rozwiązanie nie zostanie zastosowane i konflikt trzeba będzie rozwiązać ręcznie.
Szybkie sprawdzenie
Sprawdź swoją wiedzę na temat rerere.
Podsumowanie
Nauczyłeś się używać rerere:
- Włączaj je za pomocą
rerere.enabled true - Rozwiąż konflikt raz, a Git go zapisze
- Identyczne konflikty zostaną później rozwiązane automatycznie
git rerere forgetusuwa nieprawidłowe rozwiązanie
To nieoceniona pomoc podczas długich rebase'ów.
Często zadawane pytania
Czy lekcja „Ponowne wykorzystywanie rozwiązań konfliktów za pomocą Git Rerere” jest bezpłatna?
Tak — pełny tekst „Ponowne wykorzystywanie rozwiązań konfliktów za pomocą Git Rerere” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Git & GitHub Professional Workflow, przejdź na CoddyKit PRO. Kurs Git & GitHub Professional Workflow zawiera 4 lekcji w sumie.
Co nauczysz się w „Ponowne wykorzystywanie rozwiązań konfliktów za pomocą Git Rerere”?
Dowiedz się, jak funkcja rerere w Git automatycznie rejestruje i odtwarza rozwiązania konfliktów podczas powtarzających się rebase’ów i scaleń. Ćwiczysz Git & GitHub Professional Workflow z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Git & GitHub Professional Workflow?
Nie wymagamy żadnego doświadczenia. Git & GitHub Professional Workflow w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Ponowne wykorzystywanie rozwiązań konfliktów za pomocą Git Rerere”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Git & GitHub Professional Workflow?
Tak. Każda lekcja Git & GitHub Professional Workflow zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Ręczne rozwiązywanie konfliktów scalania
- Interaktywny rebase historii
- Wybieranie commitów za pomocą cherry-pick
- Ponowne wykorzystywanie rozwiązań konfliktów za pomocą Git Rerere