Wydano nową wersję Gita 2.22 i to są jego zmiany

odrzutowiec

Zaprezentowano premierę nowej wersji Gita 2.22. Git to jeden z najpopularniejszych, najbardziej niezawodnych i wydajnych systemów kontroli wersji , który oferuje również narzędzia programistyczne.

Aby zapewnić integralność historii i odporność na zmiany z perspektywy czasu, niejawne mieszanie całej poprzedniej historii jest używane przy każdym zatwierdzeniu, a podpisy cyfrowe poszczególnych znaczników i zatwierdzeń mogą być również weryfikowane.

W porównaniu z poprzednią wersją , w nowej wersji wprowadzono 745 zmian, przygotowanych przy udziale 74 programistów, z których 18 brało udział w rozwoju po raz pierwszy.

Najważniejsze cechy Git 2.22

Aby wyświetlić aktualnie używaną gałąź lokalną, możesz teraz użyć polecenia „git branch-show-current ”.

Ponadto od wersji 1.18 dostępny jest nowy tryb transferu dla zestawu zatwierdzeń git rebase --rebase-merges , który zastąpił poprzednią opcję „ --preserve-merges ”, obecnie oznaczoną jako przestarzała.

Aby zachować strukturę gałęzi w gałęzi przenośnej, można użyć opcji „ --preserve-merges ”, która uruchomiona w trybie interaktywnym ( git rebase -i --preserve-merges ) umożliwiała edycję historii zatwierdzeń, lecz nie gwarantowała całkowitego zachowania struktury repozytorium.

Tryb następczy „ --rebase-merges ” umożliwia zachowanie struktury zmian w gałęzi przenośnej, zapewniając jednocześnie pełen zestaw operacji interaktywnych, w tym usuwanie, ponowne układanie i zmianę nazw zatwierdzeń.

Na przykład „ --rebase-merges ” pozwala na zatwierdzanie zmian z odłączonej gałęzi do nowszej gałęzi głównej, przy jednoczesnym zachowaniu struktury gałęzi w gałęzi przenośnej i wprowadzeniu pewnych zmian w notatkach, aby zatwierdzać je „w locie”.

Operacja „ git rebase ” służy do zastąpienia serii zatwierdzeń nowym zatwierdzeniem bazowym, na przykład w celu zmiany oddzielnej gałęzi, w której rozwijana jest nowa funkcja, na bieżący stan gałęzi głównej, łącznie ze wszystkimi poprawkami dodanymi po tej gałęzi.

Wysublimowana obsługa zaplecza

Raport ` git bisect` został zaktualizowany i jest teraz bardziej czytelny , a ` git mergetool` obsługuje teraz również Sublime Merge (` smerge` ) jako zaplecze. Git wywołuje nowy hak ` post-index-change` po zmianie zapisanego pliku indeksu, co jest pomocne w przypadku wirtualizowanych drzew roboczych.

Dodatkowo polecenie „ git difftoo l” teraz działa również poza repozytorium i anuluje polecenie „ git checkout -m <other> ” w przypadku wykrycia różnicy między HEAD a indeksem.

Ponieważ pakowanie indeksu czasami zajmuje dużo czasu w procesie klonowania, programiści udostępnili Ci pasek postępu w tym procesie.

Jednocześnie ` git clone` komunikuje się za pośrednictwem wersji 2 protokołu dzięki nowej opcji serwera ` switch` . Kilka funkcji usprawnia uzupełnianie kodu, a programiści pracowali również nad narzędziem śledzenia trace2.

Nowy mechanizm śledzenia Trace2 oferuje bardziej elastyczny i ustrukturyzowany format wyjściowy. Trace2 umożliwia zbieranie danych telemetrycznych i wydajnościowych w celu bardziej szczegółowej analizy i debugowania (użytkownik przypisuje kontroler; dane nie są przesyłane na zewnątrz).

Wydajność i rozwój

Wbudowany mechanizm różnicowy Gita został przepisany i obsługuje teraz ` git commit-tree` , a API ` pack-redundant` i ` git multi-pack-index verify` działają teraz szybciej w repozytoriach zawierających wiele plików pakietów. Zaktualizowano również środowisko testowe dla programistów.

Niedawno ` git stash` został zaimplementowany w C dla ` git rebase` . Implementacja w C została zaktualizowana , aby zapobiec wielokrotnemu nadpisywaniu tego samego pliku przez Gita. ` git diff` działa teraz szybciej również w szczególnych scenariuszach, w których gromadzi informacje o blobach. Wreszcie, `git clone` przyspiesza proces łączenia.

Dodano również możliwość filtrowania, gdy wyświetlane są rozszerzone tagi „git log” dołączone do zatwierdzeń.


Dodaj jako preferowane źródło w Google