Czy istnieje sposób oznaczenia pliku jako nieprzydatnego w Git, aby nie mógł pojawić się w GitHub?
Po pierwsze, nie ma sposobu, aby niektóre pliki i zatwierdzenia były widoczne w lokalnym repozytorium Git, ale w jakiś sposób nie były widoczne w GitHub; jeśli masz plik zatwierdzony w Git, pojawi się w GitHub.
Po drugie, nie ma prostego i praktycznego sposobu, aby oznaczyć sam plik jako „niepospolity”. Ale jest zdecydowanie sposób na zignorowanie pliku w repozytorium Git: Dodając plik (i) - w tym ich ścieżkę względną, jeśli potrzebne - do .gitignore
pliku :
.gitignore
Plik określa na zamierzone nieśledzone pliki Git powinny ignorować. Nie ma to wpływu na pliki już śledzone przez Git; szczegóły patrz UWAGI poniżej.
Utworzenie podstawowego .gitignore
jest dość łatwe, ponieważ jest to zwykły plik tekstowy. Więc - na przykład - gdybym miał config.php
plik w twoim katalogu głównym, zrobiłbyś to; zakładając, że używasz PHP, ale koncepcja ma zastosowanie do każdej konfiguracji. Używam również Nano jako mojego edytora tekstu w tym przykładzie, ale możesz użyć dowolnego edytora tekstu, którego normalnie używasz do tego:
nano .gitignore
I po prostu dodaj tę nazwę pliku do tego pliku:
config.php
Zapisz go, a teraz Git po prostu zignoruje ten plik.
To powiedziawszy, co lubię robić dla takich konfiguracji, to pozostawienie konfiguracji repozytorium próbki / przykładu neutralnej wrażliwej specyfiki w repozytorium, więc mam pewne odniesienie do tego, jaki format pliku konfiguracyjnego to plik o nazwie coś takiego:
config.SAMPLE.php
W ten sposób wiesz dokładnie, jak config.php
plik powinien zostać skonfigurowany config.SAMPLE.php
i możesz upewnić się, że config.php
Git nigdy nie dotknie faktycznego .
Ponadto, jeśli planujesz pochwalić się swoim kodem, musisz spodziewać się, że ktoś spróbuje go pobrać i w jakiś sposób zaimplementować w swoim systemie. Pamiętaj, że nie jesteśmy tobą i bez przykładowego pliku konfiguracyjnego w repozytorium ludzie naprawdę nie zrozumieją, jak samodzielnie wdrożyć kod. Cholera, mogą nawet myśleć, że nie jesteś kompetentny, ponieważ nie podałeś podstawowego przykładu konfiguracji.