This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

git on mounted CIFS is it Git or Cygwin


I have an issue with git in Cygwin on windows shares - this is recent (worked months ago).

I have narrowed it down to a component of git creating a file as 04xx instead of 06xx permissions. When I do the same with mktemp, I am able to write the file, but git gets a permission denied. I can chmod +w the temp file and then writing works, albeit too late.

Renaming the file works in either case.

What I need help in is determining if this is a bug or a special case of mounting a windows share? Is this a Cygwin issue or a git issue? Performing the fetch on the local file system has no issues.

I have updated Cygwin as of a few hours ago, no changes in behavior. What else can I provide to debug this better? Should this move over to the git mailing list?

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ GIT_TRACE=true git fetch REDACTED_REMOTENAME
13:31:59.678749 git.c:344               trace: built-in: git fetch REDACTED_REMOTENAME
13:32:03.393302 run-command.c:640       trace: run_command: unset GIT_DIR GIT_PREFIX; ssh REDACTED_USER2NAME@REDACTED_HOST2NAME 'git-upload-pack '\''REDACTED_REPO2PATH'\'''
13:32:18.448798 run-command.c:640       trace: run_command: git rev-list --objects --stdin --not --all --quiet
remote: Counting objects: 315, done.
13:32:26.217550 run-command.c:640       trace: run_command: git index-pack --stdin -v --fix-thin '--keep=fetch-pack 2039 on REDACTED_HOSTNAME' --pack_header=2,315
13:32:31.645732 git.c:344               trace: built-in: git index-pack --stdin -v --fix-thin '--keep=fetch-pack 2039 on REDACTED_HOSTNAME' --pack_header=2,315
fatal: write error: Permission denied
fatal: index-pack failed

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ mktemp -p REDACTED_CWD/objects/pack/ tmp_test_XXXXX
REDACTED_CWD/objects/pack/tmp_test_sdTdk

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ dir REDACTED_CWD/objects/pack/
...
-r--r--r-- 1 REDACTED_USERNAME REDACTED_GROUPNAME         12 Jan 26 13:27 tmp_pack_dxknyW
-r--r--r-- 1 REDACTED_USERNAME REDACTED_GROUPNAME         12 Jan 26 12:52 tmp_pack_FPEnsr
-r--r--r-- 1 REDACTED_USERNAME REDACTED_GROUPNAME         12 Jan 26 13:32 tmp_pack_tpiIGW
-rw-r--r-- 1 REDACTED_USERNAME REDACTED_GROUPNAME          0 Jan 26 13:29 tmp_test_sdTdk

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ mv REDACTED_CWD/objects/pack/tmp_pack_tpiIGW REDACTED_CWD/objects/pack/tmp_pack_tpiIGW.mv

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ mv REDACTED_CWD/objects/pack/tmp_pack_tpiIGW.mv REDACTED_CWD/objects/pack/tmp_pack_tpiIGW

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ hexdump.exe -C REDACTED_CWD/objects/pack/tmp_pack_tpiIGW
00000000  50 41 43 4b 00 00 00 02  00 00 01 3b              |PACK.......;|
0000000c

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ echo test >> REDACTED_CWD/objects/pack/tmp_pack_tpiIGW
-bash: REDACTED_CWD/objects/pack/tmp_pack_tpiIGW: Permission denied

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ chmod +w REDACTED_CWD/objects/pack/tmp_pack_tpiIGW

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ echo test >> REDACTED_CWD/objects/pack/tmp_pack_tpiIGW

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ GIT_TRACE_PACK_ACCESS=true GIT_TRACE_PACKET=true GIT_TRACE_PERFORMANCE=true GIT_TRACE_SETUP=true GIT_TRACE=true git fetch REDACTED_REMOTENAME
...
15:00:00.303534 pkt-line.c:80           packet:        fetch> have 1997703e1a01d311e54c32ece1776795209e61e1
15:00:00.306043 pkt-line.c:80           packet:        fetch> 0000
15:00:00.312236 pkt-line.c:80           packet:        fetch< NAK
15:00:00.317800 pkt-line.c:80           packet:        fetch> done
15:00:00.550242 pkt-line.c:80           packet:        fetch< NAK
15:00:00.555607 pkt-line.c:80           packet:        fetch< ACK 3466429b2926acc6e9e2d3c4c1c9ef86d2c82860
15:00:04.088156 pkt-line.c:80           packet:     sideband< \2Counting objects: 321, done.
remote: Counting objects: 321, done.
15:00:04.791067 pkt-line.c:80           packet:     sideband< PACK ...
15:00:04.829401 run-command.c:643       trace: run_command: git index-pack --stdin -v --fix-thin '--keep=fetch-pack 1706 on REDACTED_HOSTNAME' --pack_header=2,321
15:00:17.109869 trace.c:377             setup: git_dir: .
15:00:17.112705 trace.c:378             setup: git_common_dir: .
15:00:17.114454 trace.c:379             setup: worktree: (null)
15:00:17.116820 trace.c:380             setup: cwd: REDACTED_CWD
15:00:17.118969 trace.c:381             setup: prefix: (null)
15:00:17.123794 git.c:419               trace: built-in: git index-pack --stdin -v --fix-thin '--keep=fetch-pack 1706 on REDACTED_HOSTNAME' --pack_header=2,321
15:00:19.063715 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 22055
15:00:19.147310 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 22214
15:00:19.160865 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 22375
15:00:19.264012 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 22578
15:00:19.268455 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 23505
15:00:19.318936 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 23706
15:00:19.326812 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 24045
15:00:19.335579 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 149489
15:00:19.447526 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 182724
15:00:19.452150 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 182883
15:00:19.456088 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 183044
15:00:19.571515 packfile.c:1592         ./objects/pack/pack-1ed0c0228d9db2201f0445b87af08494b0b29465.pack 183202
fatal: write error: Permission denied
15:00:19.595784 trace.c:477             performance: 2.565797600 s: git command: /usr/libexec/git-core/git index-pack --stdin -v --fix-thin '--keep=fetch-pack 1706 on REDACTED_HOSTNAME' --pack_header=2,321
fatal: index-pack failed
15:00:19.617599 trace.c:477             performance: 78.536082300 s: git command: git fetch REDACTED_REMOTENAME

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ mount
REDACTED_SHARENAME/REDACTED_REPOPATH on /tmp/foo3 type hgfs (binary,notexec,noacl,user)
REDACTED_SHARENAME/REDACTED_REPOPATH on /tmp/foo2 type hgfs (binary,notexec,user)
REDACTED_SHARENAME/REDACTED_REPOPATH on /tmp/foo1 type hgfs (binary,notexec,user)
REDACTED_SHARENAME on /mnt/REDACTED_SHAREMNT type hgfs (binary,notexec,noacl,user)
C:/cygwin64/bin on /usr/bin type ntfs (binary,auto)
C:/cygwin64/lib on /usr/lib type ntfs (binary,auto)
C:/cygwin64 on / type ntfs (binary,auto)
C: on /cygdrive/c type ntfs (binary,posix=0,user,noumount,auto)

REDACTED_USERNAME@REDACTED_HOSTNAME REDACTED_CWD
$ cygcheck.exe -s (paired down results)

Cygwin Configuration Diagnostics
Current System Time: Sun Jan 26 20:14:43 2020

Windows 10 Professional Ver 10.0 Build 17763

...
 3508k 2019/12/21 C:\cygwin64\bin\cygwin1.dll
    Cygwin DLL version info:
        DLL version: 3.1.2
        DLL epoch: 19
        DLL old termios: 5
        DLL malloc env: 28
        Cygwin conv: 181
        API major: 0
        API minor: 340
        Shared data: 5
        DLL identifier: cygwin1
        Mount registry: 3
        Cygwin registry name: Cygwin
        Installations name: Installations
        Cygdrive default prefix:
        Build date:
        Shared id: cygwin1S5

...
No Cygwin services found.


Cygwin Package Information
Package                 Version            Status
_autorebase             001007-1           OK
base-cygwin             3.8-1              OK
base-files              4.3-2              OK
bash                    4.4.12-3           OK
cygrunsrv               1.62-1             OK
cygutils                1.4.16-2           OK
cygwin                  3.1.2-1            OK
git                     2.21.0-1           OK


REDACTED_USERNAME@REDACTED_HOSTNAME /tmp/foo4
$ git clone REDACTED_CWD --bare ./
Cloning into bare repository '.'...
done.

REDACTED_USERNAME@REDACTED_HOSTNAME /tmp/foo4
$ git remote add REDACTED_REMOTENAME REDACTED_USER2NAME@REDACTED_HOST2NAME:REDACTED_REPO2PATH

REDACTED_USERNAME@REDACTED_HOSTNAME /tmp/foo4
$ git fetch REDACTED_REMOTENAME autocommit-20191028-1148-from-master
remote: Counting objects: 33, done.
remote: Total 33 (delta 0), reused 2 (delta 0)
Unpacking objects: 100% (33/33), done.
From REDACTED_HOST2NAME:REDACTED_REPO2PATH
 * branch                  autocommit-20191028-1148-from-master -> FETCH_HEAD
 * [new branch]            autocommit-20191028-1148-from-master -> REDACTED_REMOTENAME/autocommit-20191028-1148-from-master



--
Jason Pyeron  | Architect
PD Inc        |
10 w 24th St  |
Baltimore, MD |
 
.mil: jason.j.pyeron.ctr@mail.mil
.com: jpyeron@pdinc.us
tel : 202-741-9397




--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]