Mam kilka projektów git na serwerze linux.
używam komputerów Mac i Linux do programowania. problem polega na tym, że uprawnienia systemu plików mac tak naprawdę nie działają tak jak w systemie Linux, więc wszystkie pliki wydają się znajdować na umask 0755. więc za każdym razem, gdy ściągam kod na moim komputerze Mac, git status
pokazuje, że wszystkie moje pliki są zmieniane i kiedy git diff
go używam pokazuje, że jedyną zmianą jest umask. jak mogę powiedzieć gitowi, aby nie zapisywał i sprawdzał zmiany w umask?
dzięki!
Odpowiedzi:
Ustaw
core.fileMode
właściwość konfiguracji nafalse
. Możesz to łatwo zrobić za pomocą tego polecenia:źródło
--global
lub--system
. Zobaczgit help config
szczegóły.--global
wpływa na wszystkie operacje w dowolnym repozytorium dostępnym lokalnie z kontem użytkownika. Nie wpływa to na nikogo innego. Aby ustawić go dla wszystkich użytkowników określonego repozytorium, musisz przełączyć ustawienie dla repozytorium na serwerze, do którego wszyscy się pchają.Mam mały skrypt powłoki, aby to przełączyć
cat ~ / bin / git-ignore-chmod-toggle
Dzięki temu mogę przełączać git, sprawdzać inne zmiany, a następnie szybko się włączać.
źródło