← strona głównaProgramowanie (Програмування)

Jak szybko przywrócić gałąź QA/Staging do stanu main

Czasami gałąź QA (lub staging) tak bardzo obrosła eksperymentami, że łatwiej jest nie próbować rozwiązywać wszystkich konfliktów, a po prostu zrobić z niej dokładną kopię main (master).Aby to zrobić, wystarczą dwie ko...

Ta treść została automatycznie przetłumaczona z ukraińskiego.
Czasami gałąź QA (lub staging) tak bardzo obrosła eksperymentami, że łatwiej jest nie próbować rozwiązywać wszystkich konfliktów, a po prostu zrobić z niej dokładną kopię main (master).
Aby to zrobić, wystarczą dwie komendy:
git reset --hard origin/main
git push --force-with-lease
Przykład:
git reset --hard origin/main
HEAD jest teraz na 46911f2 Naprawiono wyszukiwanie na stronie głównej

git push --force-with-lease
Łącznie 0 (delta 0), ponownie użyto 0 (delta 0), ponownie użyto pakietu 0 (z 0)
Do https://github.com/username/sandbox.git
 + 53cda29...46911f2 staging -> staging (wymuszone aktualizowanie)
Co się dzieje:
  • git reset --hard origin/main całkowicie przenosi bieżącą lokalną gałąź do tego samego commita, co origin/main. Wszystkie lokalne commity i niezapisane zmiany zostaną utracone.
  • git push --force-with-lease aktualizuje zdalną gałąź QA/Staging, czyniąc ją dokładną kopią main.
Czemu --force-with-lease, a nie --force?
Bo ta komenda jest trochę bezpieczniejsza. Git sprawdza, czy nikt nie zdążył wypchnąć nowych commitów po twoim ostatnim fetch. Jeśli zdalna gałąź się zmieniła, push zostanie odrzucony zamiast cicho nadpisać czyjąś pracę.
⚠️ Rób to tylko wtedy, gdy naprawdę chcesz całkowicie nadpisać historię gałęzi QA/Staging. Po takim pushu wszystkie commity, których nie ma w main, przestaną być częścią tej gałęzi.
Aplikacje GUI typu Github Desktop mogą nie wyświetlić tych zmian. Może być konieczne ponowne uruchomienie aplikacji lub "przeskakiwanie" między gałęziami, aby zmiany się załadowały.

🔥 Więcej postów

Wszystkie wpisy
Czym jest ORM i po co jest potrzebny?
Programowanie (Програмування)26 paź '25 14:00

Czym jest ORM i po co jest potrzebny?

Kiedy pracujemy z bazami danych, zazwyczaj musimy pisać zapytania SQL - selekcje, wstawienia, akt...

Czym różni się OAuth 1 od OAuth 2
Programowanie (Програмування)19 paź '25 20:34

Czym różni się OAuth 1 od OAuth 2

OAuth 1 OAuth 1 został opracowany na początku lat 2000 jako sposób bezpiecznego dostępu aplikacji...