aboutsummaryrefslogtreecommitdiff
path: root/doc/bugs/git-annex_clears_files__39___og+r_permissions_when_rsync_transfer_is_interrupted_and_resumed.mdwn
blob: 2e86f488de2aa09fb24cfb73f48b633c5249b32c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
### Please describe the problem.

umask is 022 on both hosts
If one does ls -lL on source repo, the files are shown 644.

Now, "git annex get" from a clone done over ssh generally preserves 644 ... except if the transfer (rsync) is interrupted, and then resumed.
In fact, looks like the temp files in .git/annex/tmp have the og+r bits cleared during the resumed transfer.

So this is inconsistent: I don't see why permissions should be different, depending whether or not there was an interruption in the transfer.
Plus, og+r permissions can actually be important for setups like serving contents using Samba.

### What steps will reproduce the problem?

    cd dir1
    git init
    git annex init
    touch a
    truncate -s 10G b
    git annex add .
    git commit -m 'new'

    git clone localhost:/path/to/dir1 dir2
    cd dir2
    git annex get
    ctrl^c
    git annex get
    ls -lL
    ... see different perms



### What version of git-annex are you using? On what operating system?

git-annex version: 5.20140411-gda795e0
Linux

### Please provide any additional information below.

[[!format sh """
# If you can, paste a complete transcript of the problem occurring here.
# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log


# End of transcript or log.
"""]]

> [[fixed|done]]; brought back -p on non-crippled file systems --[[Joey]]