Python Blog

Różne ciekawostki ze świata Pythona i nie tylko.


Polecenia GIT ułatwiające pracę

9 poleceń GIT, które możesz wykorzystać, aby usprawnić swoją pracę z kodem.

Komendy GIT

1. Amend

Możesz zmienić nazwę bieżącego komunikatu zatwierdzenia za pomocą flagi --amend i napisać nowy komunikat. Pomoże to w przypadku przypadkowych wiadomości.

$ git commit --amend -m "Love"

Można dołączyć dodatkowe zmiany do bieżącego zatwierdzenia przed wysłaniem go do zdalnego repozytorium. Aby to zrobić, należy dodać zmiany w pliku, a następnie zatwierdzić przy użyciu flagi --amend. Aby zachować poprzedni komunikat zatwierdzenia, wystarczy użyć flagi --no-edit.

$ git add .
$ git commit --amend --no-edit

2. Override Remote History

Jeśli chcesz wypchnąć lokalne zatwierdzenie i zastąpić zdalną historię bez zajmowania się rozwiązywaniem problemów, możesz użyć flagi --force. Należy jednak pamiętać, że używanie flagi force nie jest zalecane i powinno być używane tylko wtedy, gdy jesteś absolutnie pewien tego, co robisz. Należy pamiętać, że użycie flagi force spowoduje przepisanie zdalnej historii.

$ git push origin master --force

3. Revert

Aby cofnąć zatwierdzenie w Git, można użyć polecenia revert. Polecenie to nie usuwa jednak żadnych commitów. Zamiast tego tworzy nowe zatwierdzenie, które cofa zmiany wprowadzone przez oryginalne zatwierdzenie.

Użyjemy log z flagą --oneline, aby wyświetlić historię commitów w krótszej formie.

$ git log --oneline

Aby powrócić do poprzedniego zatwierdzenia, używamy polecenia git revert, po którym następuje identyfikator zatwierdzenia. Spowoduje to utworzenie nowego zatwierdzenia ze zmianami z poprzedniego zatwierdzenia.

$ git revert 8f184d5

4. Codespace

Chcesz zwiększyć swoją produktywność na GitHub? Dzięki GitHub Code Spaces możesz teraz edytować i uruchamiać swój kod bezpośrednio w przeglądarce. Aby uzyskać dostęp do tej funkcji, wystarczy przejść do ulubionego repozytorium, nacisnąć klawisz kropki (".") na klawiaturze, co spowoduje przekierowanie do interfejsu użytkownika VSCode. Można wprowadzać zmiany w kodzie i przesyłać je do zdalnego repozytorium. Jeśli jednak chcesz uruchomić kod w terminalu, musisz uruchomić Codespace w chmurze. Darmowa wersja oferuje doskonałą opcję uruchamiania kodu Pythona w przeglądarce. Czyż to nie wspaniałe?

5. Stash

Podczas pracy nad projektem można dodawać pliki do obszaru przejściowego, a następnie zatwierdzać je w celu zapisania bieżących postępów. Istnieje jednak inny sposób na łatwe zapisanie pracy za pomocą polecenia stash. Kiedy używasz stash, zapisujesz bieżące postępy bez dodawania ich do obszaru przejściowego lub zatwierdzania. Pozwala to na zapisanie postępu i przywrócenie go w dowolnym momencie.

$ git stash save new-idea

Możesz wyświetlić swoją listę skrytek i zanotować odpowiedni indeks, aby ją odzyskać.

$ git stash list

Nasz magazyn “nowych pomysłów” jest zapisany w indeksie 0. Aby go odzyskać, użyj tego polecenia:

$ git stash apply 0

6. Rename Branch

Masz możliwość zmiany nazwy domyślnej gałęzi na coś bardziej odpowiedniego. W tym przypadku zmienimy nazwę “master” na “main”.

$ git branch -M main

Zmiany można zweryfikować za pomocą następującego polecenia:

$ git status

7. Decorate the Logs

Jeśli chcesz wyświetlić szczegółową historię wszystkich commitów dokonanych w bieżącym repozytorium, możesz użyć polecenia git log. Jednak dane wyjściowe mogą być trudne do odczytania. Aby uczynić go bardziej czytelnym, można użyć flag graph, decorate i oneline. Spowoduje to wyświetlenie zmian wprowadzonych w wielu gałęziach i sposobu ich łączenia.

$ git log --graph --decorate --oneline

8. Switch Back Branch

Kilka razy zdarzyło mi się przełączyć na nową gałąź i zapomniałem nazwy poprzedniej gałęzi. W rezultacie musiałem użyć polecenia git branch -a, aby wyświetlić listę nazw gałęzi. Istnieje jednak prostszy sposób na powrót do oryginalnej gałęzi poprzez użycie myślnika “-” po poleceniu git checkout. Najpierw utworzymy nową gałąź Git “neo”.

$ git branch neo

Przełączymy się na gałąź “neo”.

$ git checkout neo

Aby powrócić do oryginalnej gałęzi, użyjemy następującego polecenia:

$ git checkout -

9. Copy Remote Changes

Dowiedzieliśmy się już o zastępowaniu zdalnego repozytorium. Nauczmy się, jak nadpisać lokalne repozytorium przy użyciu zdalnego repozytorium. Użyjemy polecenia fetch, aby pobrać najnowsze zmiany ze zdalnego repozytorium.

$ git fetch origin

Następnie użyjemy polecenia “reset” z flagą “hard”, aby zastąpić wszelkie lokalne zmiany wersją zdalną. Należy pamiętać, że spowoduje to trwałe odrzucenie wszelkich lokalnych zmian.

$ git reset --hard origin/master

Jeśli nadal istnieją nieśledzone pliki, można je usunąć za pomocą następującego polecenia:

$ git clean -df

Podsumowanie

W tym artykule omówiliśmy zaawansowane techniki Git, które są kluczowe dla analityków danych i inżynierów oprogramowania, którzy pracują nad wspólnym projektem danych. Znajomość tych technik może pomóc uniknąć wypadków i znacznie szybciej rozwiązywać problemy.

Opracowano na podstawie KDnuggets.