Niedawno zacząłem używać Git i mam problem tylko z jedną rzeczą. Jak mogę śledzić katalogi bez śledzenia ich zawartości?
Na przykład witryna, nad którą pracuję, umożliwia przesyłanie. Chcę śledzić katalog uploads, aby był tworzony podczas rozgałęziania itp., Ale oczywiście nie pliki w nim zawarte (pliki testowe w gałęzi deweloperskiej lub prawdziwe pliki w katalogu głównym).
W moim .gitignore mam:
przesłane /*.*
Próbowałem również (co ignoruje cały katalog):
przesłane /
Ten katalog może również zawierać podkatalogi (przesłane / kciuki / przesłane / filmy /). Chciałbym móc je śledzić, ale nie ich pliki.
Czy to możliwe dzięki Git? Szukałem wszędzie, nie znajdując odpowiedzi.
.placeholder
-file” -file;)Odpowiedzi:
Git nie śledzi katalogów, śledzi pliki, więc aby to osiągnąć, musisz śledzić co najmniej jeden plik. Zakładając, że twój
.gitignore
plik wygląda mniej więcej tak:Możesz to zrobić:
Jeśli zapomnisz
-f
, zobaczysz:Wtedy, kiedy to zrobisz
git status
, zobaczysz:Oczywiście możesz wtedy:
źródło
.gitignore
pliku jako symbolu zastępczego.Pisałem o tym tutaj .
Dodaj .gitignore w katalogu.
źródło
.gitkeep
Najlepszą odpowiedzią, jaką znalazłem, jest dołączenie pliku .gitignore do folderu przesyłania z tą zawartością
Tutaj masz Jak mogę dodać pusty katalog do repozytorium Git?
źródło
Jak dotąd najlepsze rozwiązanie:
1) Utwórz plik .gitignore
2) Napisz do środka:
3) Dodaj plik .gitignore do wybranego folderu.
Źródło: https://stackoverflow.com/a/5581995/2958543
źródło
Aby śledzić tylko katalogi, ale nie pliki, wykonałem następujące czynności. Dzięki komentarzowi @ PeterFarmer na temat plików śledzenia tylko przez git, byłem w stanie zachować wszystkie katalogi z wyłączeniem plików, jak opisano poniżej.
Dodanie tego do pliku .gitignore załatwi sprawę. Oto moja struktura folderów.
Kiedy to robię
git add . && git status
, git rozpoznaje tylko foldery, ale nie pliki.Pamiętaj, że w przypadku plików .gitignore:
Wstawianie ukośnika na początek szuka tylko katalogu głównego.
Podwójna gwiazdka wyszukuje zero lub więcej katalogów.
źródło