w tym poście zobaczymy jak usunąć commity z gałęzi Git.,et
chodzi o to, aby wymusić zresetowanie katalogu roboczego, aby usunąć wszystkie commity, które pojawiają się po podanym commicie, a następnie wymusić naciśnięcie:
1
|
git Reset –Hard
|
możesz odwoływać się do commita poprzez jego pochodzenie, używając pełnego skrótu SHA-1 lub podając częściowy skrót, który powinien mieć co najmniej 4 znaki i być jednoznaczny.,
1
2
3
4
|
# przypomnijcie sobie pierwsze 4 popełnia
PIP reset –hard Rozdział~4
|
Jeśli te zmiany znajdują się w zdalnym repozytorium, trzeba wymusić nacisnąć sprzętowy restart zdalnego repozytorium.,
1
2
3
4
|
# Force Push updates to the remote repository
git push
|
Here’s a live example:
Note, that any changes made in the working directory since the last commit are silently discarded., Aby tego uniknąć, najpierw Ukryj swoje lokalne zmiany, wywołującgit-stash
polecenie, które z kolei przywróci również katalog roboczy do wersjiHEAD
po zapisaniu lokalnych modyfikacji. git reset --hard HEAD
jest często używany do usuwania wszystkich niezarejestrowanych zmian, aby dopasować najnowszy commit w katalogu roboczym.
Jeśli chcesz zachować swoją pracę i tylko cofnąć zatwierdzenie, możesz użyć opcji--soft
.,
1
|
git reset –soft
|
This is demonstrated below:
git revert
It is not a good idea to do a force push on a public or a shared repository; do a git-revert
instead., Tworzy nowy commit, który anuluje wszystkie zmiany wprowadzone w określonym commicie, a następnie stosuje go do bieżącej gałęzi.,iv id=”e6e72cc751″>