Jeden plik .gitignore dla całego Twojego stosu technologicznego
Ten generator .gitignore łączy gotowe szablony dla języków, frameworków, narzędzi budowania, edytorów i systemów operacyjnych w jeden spójny plik. Wybierz Node i Next.js, dodaj macOS, Windows oraz VS Code, a otrzymasz plik .gitignore z czytelnym podziałem na sekcje, bez powielonych wzorców i z miejscem na własne reguły. Szablony pochodzą ze sprawdzonego repozytorium github/gitignore, a całość generowana jest w Twojej przeglądarce.
Jak wygenerować plik .gitignore
- 1Wpisz język, framework, edytor lub system w wyszukiwarce —
python,unity,jetbrains— i kliknij kafelek, aby go dodać. Klawisz Enter dodaje pierwsze dopasowanie. - 2Połącz tyle szablonów, ile wymaga Twój projekt. Typowy projekt internetowy łączy język, framework, edytor kodu oraz system operacyjny.
- 3Dodaj ścieżki specyficzne dla projektu w sekcji Własne linie, np.
/uploads/lub*.sqlite. - 4Skopiuj wynik lub kliknij Pobierz jako plik
.gitignorei umieść go w katalogu głównym repozytorium Git.
Do czego służy plik .gitignore
Plik .gitignore wymienia pliki, których Git nie powinien śledzić: zależności pobierane przez menedżery pakietów (node_modules/, vendor/), pliki wynikowe kompilacji (dist/, target/), pamięć podręczną, logi, konfiguracje edytorów oraz poufne klucze, takie jak .env. Ich wykluczenie zmniejsza rozmiar repozytorium, zwiększa czytelność diffów i zapobiega wyciekom danych dostępowych.
Plik działa wyłącznie na pliki nieśledzone (untracked). Jeśli plik został już wcześniej zatwierdzony w repozytorium, dopisanie go do .gitignore nie usunie go z historii; uruchom git rm --cached <plik> (lub git rm -r --cached <katalog>) i utwórz commit, aby przestać go śledzić przy zachowaniu kopii lokalnej.
Składnia reguł w .gitignore
Kolejność reguł ma kluczowe znaczenie: ostatni pasujący wzorzec ma pierwszeństwo. Dlatego wyjątki, takie jak !.vscode/settings.json, muszą znajdować się po ogólnej regule .vscode/*.
- *.log
- Wzorzec bez ukośnika dopasowuje na dowolnej głębokości: ignoruje każdy plik .log w repozytorium.
- /build
- Początkowy ukośnik kotwiczy wzorzec w katalogu z plikiem .gitignore, ignorując tylko katalog build w katalogu głównym.
- dist/
- Końcowy ukośnik dopasowuje wyłącznie katalogi, ignorując pliki zwykłe o nazwie dist.
- **/temp
- Dwie gwiazdki oznaczają dowolną liczbę podkatalogów: folder temp w katalogu głównym lub w dowolnym podfolderze.
- !.env.example
- Początkowy wykrzyknik przywraca śledzenie pliku wykluczonego przez wcześniejszą regułę. Nie działa, jeśli nadrzędny folder został wykluczony.
- # komentarz
- Linie zaczynające się od # to komentarze; puste linie służą za separatory. Poprzedź # lub ! ukośnikiem odwrotnym, aby traktować je dosłownie.
Jak łączone są szablony
Każdy szablon staje się sekcją z nagłówkiem ### Nazwa ###. Przy włączonej opcji Usuń zduplikowane wzorce reguły, które pojawiły się wcześniej, są pomijane w kolejnych sekcjach, a puste komentarze są usuwane, dzięki czemu plik pozostaje zwięzły. Wzorce z negacją (wykrzyknikiem) pozostają na swoich miejscach, aby zachować poprawną logikę wyjątków.
Szablony narzędzi i frameworków często się nakładają — Node, Next.js i Vite ignorują node_modules oraz logi —, więc usunięcie duplikatów zazwyczaj skraca plik o 20% lub więcej.
Pliki ignorowania: projektowe, globalne i lokalne
Plik .gitignore projektu należy zatwierdzić w repozytorium, aby zespół korzystał ze wspólnych reguł, ograniczając go do plików generowanych przez projekt. Pliki tworzone przez Twój system — .DS_Store, Thumbs.db, katalogi edytora — najlepiej umieścić w globalnym pliku ignore: git config --global core.excludesFile ~/.gitignore_global. W przypadku reguł osobistych w konkretnym repozytorium skorzystaj z pliku .git/info/exclude, który nie jest wersjonowany.
Pliki blokujące wersje, takie jak package-lock.json, poetry.lock i Cargo.lock w aplikacjach, powinny być wersjonowane w Git, aby instalacja była w pełni powtarzalna. Aby sprawdzić, która reguła ignoruje dany plik, wykonaj git check-ignore -v sciezka/do/pliku.
Chroń dane poufne przed Git
Szablon Env i sekrety ignoruje pliki .env, klucze prywatne i pliki poświadczeń, zachowując .env.example dla dokumentacji. Ignorowanie chroni tylko przyszłe commity: jeśli klucz trafił już do repozytorium, natychmiast go unieważnij, ponieważ pozostaje w historii Git. Narzędzia powiązane: kalkulator chmod do uprawnień plików oraz generator robots.txt dla robotów sieciowych.
Najczęstsze pytania
- Gdzie powinienem umieścić plik .gitignore?
- W katalogu głównym repozytorium, obok folderu .git. Możesz także dodawać pliki .gitignore w podkatalogach; ich reguły będą obowiązywać w obrębie danego katalogu.
- Dlaczego Git nadal śledzi plik po dodaniu do .gitignore?
- .gitignore dotyczy wyłącznie plików nieśledzonych. Wykonaj git rm --cached <plik> (lub git rm -r --cached <katalog>) i utwórz commit, aby Git przestał śledzić plik bez usuwania go z dysku.
- Czy powinienem ignorować package-lock.json lub yarn.lock?
- Nie, w aplikacjach należy je wersjonować. Pliki lock gwarantują identyczne wersje pakietów na każdej maszynie i muszą znajdować się w repozytorium.
- Czy foldery .vscode lub .idea powinny znaleźć się w .gitignore?
- Zazwyczaj tylko ustawienia osobiste. Szablon VS Code ignoruje .vscode/*, zachowując wspólne settings.json, tasks.json i launch.json; szablon JetBrains ignoruje cały folder .idea.
- Jak zignorować .DS_Store we wszystkich projektach?
- Utwórz plik globalnego ignorowania: stwórz ~/.gitignore_global zawierający .DS_Store i wykonaj polecenie git config --global core.excludesFile ~/.gitignore_global.
- Jak zignorować całą zawartość folderu z wyjątkiem jednego pliku?
- Zignoruj zawartość folderu, a nie sam folder, po czym dodaj wyjątek: folder/* a następnie !folder/keep.txt. Wzorzec folder/ zignorowałby cały katalog bez możliwości przywrócenia pliku.
- Skąd pochodzą te szablony?
- Pochodzą z oficjalnego repozytorium github/gitignore na licencji CC0, po usunięciu przestarzałych reguł. Zawsze przejrzyj wynik pod kątem specyfiki swojego projektu.