Wydaje Git ignoruje ~/.gitconfig
Git ignoring gitconfig?
$ git config --global core.filemode false
$ git config -l
core.filemode=false
core.filemode=true
Więc teraz są 2 wejścia dla core.filemode
i git nadal nie ignorując FileMode zmienia
$ touch modetest
$ git add .
$ git commit -m test1
[master (root-commit) 320cfe4] test1
0 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 modetest
$ chmod +x modetest
$ git diff
diff --git a/modetest b/modetest
old mode 100644
new mode 100755
podstawie torek’s answer dodałem tę linię do mojego .bash_profile
[ -d .git ] && git config core.filemode false
Nie do końca pewna, w jaki sposób git faktycznie je implementuje. Musiałbym zagłębić się w kod źródłowy. Ach, jest: zależy od elementu konfiguracyjnego git-time 'NO_TRUSTABLE_FILEMODE'. Jeśli to nie jest zdefiniowane, to testuje w czasie wykonywania przez chmod-ing '.git/config', który ostatecznie zastępuje' .git/config.lock', który usuwa jego tymczasowy chmod. Wersja tymczasowa ma ustawiony bit U + X; jeśli pozostanie ustawione po chmod, git uważa, że bit x ma znaczenie. – torek
to ma sens, ale mimo to jest frustrujące, musiałem skopiować projekt z jednego komputera na drugi 5 razy, dopóki nie zorientowałem się, co się dzieje)) dzięki! –
Dzięki, wiem, że 'git config --global core.fileMode false' jest bezużyteczny. git problem fileMode Spotkałem go każdego dnia.Musiałem to konfigurować za każdym razem, gdy tworzę nowy projekt. –