Gram z git (nadal bardzo noob) i chciałem poznać różnicę między "reset" i "rebase". Czy ten jest mocniejszy od drugiego?Jaka jest różnica między "reset git" a "git rebase"?
Powiedz, że chciałem usunąć pogrubione 3 zatwierdzenia z historii, którego lepiej użyć, czy też powinienem je oznaczyć, a następnie usunąć przy pomocy git tag -d <tagname>
?
17a64df 2012-06-21 | Witam używa style.css (HEAD, origin/style, master),
a6792e4 2012-06-21 | Dodano arkusz stylów CSS
801e13e 2012-06-21 | Dodano README
5854339 2012-06-21 | Dodano indeks.html
0b1dd4c 2012-06-21 | Przeniesiono plik hello.html do biblioteki
55649c3 2012-06-21 | Dodaj autora/komentarz e-mail
9b2f3ce 2012-06-21 | Dodano komentarz autora
cdb39b0 2012-06-21 | Zatwierdź p tagi z tekstem (v1.1)
b7b5fce 2012-06-21 | To przywraca commit a6faf60631b5fbc6ee79b52a1bdac4c971b69ef8.
a6faf60 2012-06-21 | Przywróć "Ups, nie chcieliśmy tego zatwierdzenia"
a006669 2012-06-21 | Ups, nie chcieliśmy tego zatwierdzenia
262d1f7 2012-06-21 | Dodano nagłówek HTML (v1)
b1846e5 2012-06-21 | Dodano standardowe znaczniki strony HTML (v1-beta)
bf1131e 2012-06-21 | Dodano HI TAG
02b86d0 2012-06-21 | Pierwszy Commit
Dzięki za odpowiedź i wyjaśnienie, jakie są różnice. – Q10
usuwa linie z rebase tak samo jak zmienia słowo "pick" na "s" dla squasha? – Ninjaxor
@Ninjaxor Nie, usunięcie linii spowoduje całkowite usunięcie zatwierdzeń i zmian wprowadzonych przez historię. To tak, jakby nigdy nie popełniono zobowiązania. Na przykład, jeśli usuniesz commit dodający linię, linia ta nie pojawi się w żadnym późniejszym zatwierdzeniu po podziale. Z drugiej strony, squashowanie zachowa zmiany wprowadzone w zatwierdzeniu, a jedynie pozbędzie się tego osobnego zatwierdzenia. – poke