Reflog

Reflog jest dziennikiem wszystkich zdarzeń zachodzących w naszym lokalnym repozytorium. Jest on także mechanizmem bezpieczeństwa git'a pozwalającym odtworzyć dowolne zdarzenie.

Na potrzeby demonstracji wykonaj następujące polecenia:

mkdir git-reflog
cd git-reflog
git init
touch a.txt
git add a.txt
git commit -m "A file."
touch b.txt
git add b.txt
git commit -m "B file."

Teraz sprawdź jak wygląda historia twojego lokalnego repozytorium:

git log

Zobacz jak wyglądała Twoja aktywność w repozytorium za pomocą polecenia:

git reflog

Usuń na stałe ostatni commit za pomocą polecenia

git reset --hard HEAD~1

Ponownie dokonaj sprawdzenia dziennika zdarzeń:

git reflog

Zwróć uwagę, że zdarzenie usuniętego przez Ciebie commitu posiada odwołanie HEAD@{n}. N w tym przypadku jest numerem zdarzenia w dzienniku, dzięki któremu możemy wykonać następujące polecenie:

git checkout HEAD@{N}

Powyższe polecenie przełączy nas na wskazany commit (który został "usunięty") dzięki czemu możemy kontynuować naszą pracę (po wyjściu ze stanu DETACHED).

results matching ""

    No results matching ""