Przejdź do treści
100% lokalnie

Generator .gitattributes

Utwórz plik .gitattributes do normalizacji zakończeń linii, plików binarnych, Git LFS i nie tylko.

Wynik

Generator .gitattributes

Plik .gitattributes mówi Gitowi, jak traktować określone ścieżki — czy normalizować zakończenia linii, traktować plik jako binarny, kierować go przez Git LFS, czy dać mu sterownik diff z wiedzą o języku. Kiedy to się psuje, Windows checkout kończy się difem w każdej linii, lub plik Photoshopa jest porównywany tak, jakby był zwykłym tekstem. To narzędzie buduje plik ze sprawdzonych grup reguł, a nie z skopiowanego gist.

Normalizacja zakończeń linii dodaje podstawową regułę text=auto plus przesłonięcia LF i CRLF dla skryptów powłoki i plików wsadowych Windows. Pliki binarne oznaczają rozszerzenia obrazów, czcionek i plików wykonywalnych, aby Git nigdy nie porównywał ani nie scalał ich jako tekst. Reguły Git LFS kierują duże formaty projektowania i mediów przez magazyn dużych plików Gita. Sterowniki diff dodają czytelne nagłówki diffu dla CSS, HTML, Java, Python, Go i Rust. Strategie scalania oznaczają pliki blokad jako binarne i pliki takie jak CHANGELOG.md jako union-mergeable. Atrybuty Linguist wskazują generowane, vendored i ścieżki dokumentacji, aby przestały liczyć się do statystyk języka repozytorium na GitHubie. Preset projektu — web, Node, Python, Unity lub dokumentacja — dodaje jedną sekcję dostosowaną do tego stosu.

Każda grupa reguł jest niezależna, więc możesz łączyć obsługę binarną, Git LFS i preset języka w jednym przejściu. "Połącz sekcje bez zduplikowanych reguł" odrzuca linię, którą zarówno preset, jak i wybrana grupa obie zawierają, więc plik blokady nigdy nie uzyska dwie konfliktujące reguły scalania; sekcja pozostająca bez linii jest odrzucana, a nie drukowana pusta. Sortowanie utrzymuje reguły każdej sekcji w przewidywalnej kolejności, łatwiej do przeglądu w miarę wzrostu pliku.

Wszystko działa w Twojej przeglądarce: ścieżka repozytorium ani nazwa projektu nigdy się nigdzie nie wysyłają. Skopiuj wynik do swojego .gitattributes, pobierz go jako plik .txt lub wyślij go z powrotem na wejście, aby kontynuować warstwowanie grup reguł.

Częste pytania

Gdzie ide plik .gitattributes?
Zapisz go jako .gitattributes w katalogu głównym repozytorium (lub w podkatalogu dla reguł ograniczonych do tego folderu), a następnie go zcommituj.
Dlaczego * text=auto jest ważne?
Mówi Gitowi, aby normalizował zakończenia linii do LF w repozytorium, podczas gdy pliki są sprawdzane z natywnym zakończeniem systemu operacyjnego, co uniemożliwia windownowemu checkoutowi zmianę każdej linii w diff.
Czy muszę mieć zainstalowany Git LFS, aby korzystać z reguł LFS?
Reguły są nieaktywne, dopóki Git LFS nie zostanie zainstalowany i zainicjowany w repozytorium (git lfs install), po czym pliki, które je spełniają, są przechowywane i przesyłane przez LFS.
Co robi reguła linguist-vendored?
Mówi narzędziu detektora języka GitHub, aby wyłączył tę ścieżkę ze statystyk języka repozytorium i wyników wyszukiwania, co jest przydatne dla vendored zależności i generowanych pakietów.
Czy moje informacje o projekcie są przesyłane gdzieś?
Nie. Plik jest generowany całkowicie w Twojej przeglądarce na podstawie wybranych opcji — żadne informacje o Twoim repozytorium nie są wysyłane na serwer.