Jakie są różnice między nimi.gitignore i.gitkeep?
Jakie są różnice między .gitignore
i .gitkeep
? Czy to ta sama rzecz o innej nazwie, czy obie pełnią inną funkcję? Wydaje mi się, że nie jestem w stanie znaleźć zbyt wielu dokumentów na .gitkeep
.
3 answers
.gitkeep
nie jest udokumentowane, ponieważ nie jest to cecha Gita.
Git nie może dodać całkowicie pustego katalogu . Ludzie, którzy chcą śledzić puste katalogi w Git, stworzyli konwencję umieszczania plików o nazwie .gitkeep
w tych katalogach. Plik można nazwać dowolnym; Git nie przypisuje tej nazwie żadnego szczególnego znaczenia.
Istnieje konkurencyjna konwencja dodawania pliku .gitignore
do pustych katalogów, aby je śledzić, ale niektórzy ludzie uważają to za mylące ponieważ celem jest zachowanie pustych katalogów, a nie ich ignorowanie; .gitignore
jest również używany do wyświetlania listy plików, które powinny być ignorowane przez Git podczas szukania plików nie śledzonych.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-14 14:44:08
.gitkeep
to tylko Element Zastępczy. Atrapa pliku, więc git nie zapomni o katalogu, ponieważ Git śledzi tylko pliki.
Jeśli chcesz mieć pusty katalog i upewnij się, że pozostaje "czysty" dla Gita, Utwórz .gitignore
zawierający następujące wiersze w obrębie:
# .gitignore sample
###################
# ignore all files in this dir...
*
# ... except for this one.
!.gitignore
Jeśli chcesz, aby tylko jeden rodzaj plików był widoczny dla git, oto przykład jak odfiltrować wszystko, z wyjątkiem .gitignore i wszystkie .txt
pliki:
# .gitignore to keep just .txt files
###################################
# filter everything...
*
# ... except the .gitignore...
!.gitignore
# ... and all text files.
!*.txt
('#'oznacza komentarze.)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-11-30 20:34:48
.gitignore
Jest plikiem tekstowym zawierającym listę plików w katalogu, które git zignoruje lub nie doda/zaktualizuje w repozytorium.
.gitkeep
Ponieważ git usuwa lub nie dodaje pustych katalogów do repo .gitkeep to rodzaj hack 'a (nie wydaje mi się, że jest oficjalnie nazwany jako część Gita) do utrzymywania pustych katalogów w repo.
Po prostu wykonaj touch /path/to/emptydirectory/.gitkeep
aby dodać plik, a git będzie mógł utrzymać ten katalog w repozytorium.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-12 19:36:01