summaryrefslogtreecommitdiff
path: root/doc/bugs/whereis_does_not_work_in_direct_mode/comment_6_7f68d9daa542f992c61b7b7c36819933._comment
blob: 7f5fa824ef4f634a7b8431f9983115e94fc143f8 (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
48
49
[[!comment format=mdwn
 username="http://joeyh.name/"
 ip="209.250.56.132"
 subject="comment 6"
 date="2014-09-11T18:34:02Z"
 content="""
It looks like there might be some minor inconsistency in when git-annex syncs when in indirect mode vs direct mode. This results in the location tracking information not being committed until after the git-annex sync in the pc1/Docs repository has pushed the git-annex branch to origin. Since that is the only 
time that pc1/Docs syncs with origin, the location tracking info never reaches origin, and the rest of the behavior follows.

Here is the direct mode sync, showing the git-annex branch commit occurring after the push. Specifically, when the sync merges the git-annex branch, it also commits any deferred changes at that point:

<pre>
commit  ok
pull origin 
ok
push origin 
Counting objects: 6, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (6/6), 574 bytes | 0 bytes/s, done.
Total 6 (delta 0), reused 0 (delta 0)
To localhost:/tmp/annex/Docs.git
 * [new branch]      git-annex -> synced/git-annex
 * [new branch]      annex/direct/master -> synced/master
ok
(Recording state in git...)
</pre>

And here is the indirect mode sync, showing a \"commit\" which includes committing deferred changes to the git-annex branch:

<pre>
commit  (Recording state in git...)
ok
pull origin 
ok
push origin 
Counting objects: 15, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (15/15), 1.32 KiB | 0 bytes/s, done.
Total 15 (delta 0), reused 0 (delta 0)
To localhost:/tmp/annex/Docs.git
 * [new branch]      git-annex -> synced/git-annex
 * [new branch]      master -> synced/master
ok
</pre>

It seems that [[!commit 2cfda59174b9cbc02e87c069982096d44601cd40]] and some subsequent changes accidentially removed the Annex.Branch.commit from the direct mode code path within the first part of `sync`. So, easily fixed.
"""]]