summaryrefslogtreecommitdiff
path: root/doc/bugs/git_annex_drop_direct_creates_symlinks_with_possibly_incorrect_path_separator.mdwn
blob: e0c501c90672388b58841ed47d84a85f66d4f3c8 (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
### Please describe the problem.

On windows, path separator of symlinks created by drop command is different than the one created by checkout/update, leading to incorrect git annex status reporting

### What steps will reproduce the problem?

Checkout a repo in direct mode on windows, you'll see symlinks as such (using the 'unix' path separator):

	../../../.git/annex/objects/p1/GM/SHA256E-s921877--4801f74cb608bdcea1f7f7a50a874865c87d03bc6fff3d16e2b9d216b4c231 ..... etc.

get the content, and then drop it, the symlink which is then recreated has different path separator:

	..\..\..\.git\annex\objects\p1\GM\SHA256E-s921877--4801f74cb608bdcea1f7f7a50a874865c87d03bc6fff3d16e2b9d216b4c231 ----- etc.

resulting in misreported git annex status:

	git annex statua
	M dropped.file.name

changing the path separator seemingly solves:

	sed -e 's/\\\/\\//g' dropped.file.name -i
	git annex dropped.file.name
	.... nothing reported ....

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

	git-annex version: 5.20150128-g2df3a02
	running on Microsoft Windows [Version 6.1.7601]


### Please provide any additional information below.

no additional info.

> I see that I broke this some time ago. Fixed it now, and added a test
> case. [[done]] --[[Joey]]