Package: git-annex
Version: 4.20130827
Severity: normal

I just set up git-annex for the first time following the walkthrough
instructions, and the local Git configuration ended up in a state that
had me extremely confused until I found it.

After doing:

    git init
    git annex init 'work desktop'
    git annex add .
    git commit -a -m 'Initial import'

on one side and then:

    git clone ssh://windlord.stanford.edu/home/eagle/music
    cd music
    git annex init 'work laptop'
    git remote add work-desktop ssh://example.stanford.edu/home/rra/music

on the other side everything seemed fine.  Then I did:

    git fetch work-desktop
    git merge work-desktop/master

on the second repository, and the result was that downloading every file
failed with an error saying that I should try to make the work desktop
repository available.  I messed around for some time trying to figure out
if ssh authentication isn't working, before finally looking in
.git/config to discover that the work-desktop remote was marked
annex-ignore.

As soon as I removed that, everything started working just fine.

The really weird (and frustrating) part is that now I can't reproduce
this, but I don't know what changed.  I think it was something about
the repository state on the work desktop side, since before it started
working, a synced remote prefix with two branches showed up (I believe
when I was doing a git annex sync while trying to debug).

I didn't run any command other than git annex status and git annex sync on
the work desktop side after the initial setup, and git annex sync claimed
it didn't do anything (well, it just printed out "commit\nok\n"), so it
must have been something that I ran on the laptop that caused the work
desktop repository to start working properly.  Here's an annotated version
of parts of my bash history in case any of this provides a clue.

Initial setup:

  369  2013-08-31 17:33:28: git clone 
ssh://windlord.stanford.edu/home/eagle/music
  370  2013-08-31 17:33:32: cd music/
  371  2013-08-31 17:33:32: ls
  372  2013-08-31 17:33:35: ls kenny_loggins/outside_from_the_redwoods/
  373  2013-08-31 17:33:43: git annex init 'work laptop'
  374  2013-08-31 17:33:47: git remote -v
  375  2013-08-31 17:33:59: git remote add work-desktop 
ssh://windlord.stanford.edu/home/eagle/music
  376  2013-08-31 17:34:17: git fetch work-desktop
  377  2013-08-31 17:34:27: git merge work-desktop/master 

This was the first failure:

  378  2013-08-31 17:34:33: git annex get .

Started trying to debug things to see if possibly there was something
wrong with ssh authentiction.  (I normally use ControlMaster without
the right credentials to open a new ssh connection, and I thought maybe
git annex was somehow ignoring ControlMaster from .ssh/config and needed
the right Kerberos credentials for ssh.  That may be part of the
problem, since git annex map wasn't working either.)

  379  2013-08-31 17:34:52: klist
  380  2013-08-31 17:35:33: git annex get -v 3_doors_down/
  381  2013-08-31 17:37:20: man git annex
  382  2013-08-31 17:37:41: git remote -v
  383  2013-08-31 17:37:51: man git annex
  384  2013-08-31 17:38:54: git annex map
  385  2013-08-31 17:38:59: klist
  386  2013-08-31 17:39:09: kinit
  387  2013-08-31 17:39:18: git annex map
  388  2013-08-31 17:39:49: git remote seturl origin 
ssh://[email protected]/home/eagle/music
  389  2013-08-31 17:39:54: git remote set-url origin 
ssh://[email protected]/home/eagle/music
  390  2013-08-31 17:39:57: git annex map
  391  2013-08-31 17:40:14: git remote set-url origin 
ssh://windlord.stanford.edu/home/eagle/music
  392  2013-08-31 17:40:20: kinit
  393  2013-08-31 17:40:28: git annex map
  394  2013-08-31 17:41:39: git annex get .
  395  2013-08-31 17:42:06: git annex get . 2>&1 | less
  396  2013-08-31 17:42:32: strace git annex get . 2>&1 | less
  397  2013-08-31 17:42:49: strace -f git annex get . 2>&1 | less
  398  2013-08-31 17:46:32: ls
  399  2013-08-31 17:46:37: git annex get 3_doors_down/
  400  2013-08-31 17:47:21: git annex status

git annex get was still broken at this point, but I ran git annex sync and
that pushed some changes to the remote side (successfully):

  401  2013-08-31 17:49:32: git annex sync

However, git annex get still wasn't working here:

  402  2013-08-31 17:49:48: git annex get .
  403  2013-08-31 17:50:25: klist
  404  2013-08-31 17:50:35: git annex whereis 3_doors_down/
  405  2013-08-31 17:50:51: git annex get file 
3_doors_down/away_from_the_sun/01-when_im_gone.ogg
  406  2013-08-31 17:50:57: git annex get file 
3_doors_down/away_from_the_sun/01-when_im_gone.ogg --from work-desktop
  407  2013-08-31 17:51:02: git annex get file 
3_doors_down/away_from_the_sun/01-when_im_gone.ogg --from origin

Here's where I removed annex-ignore from .git/config for the work-desktop
remote, and then git annex get file worked:

  408  2013-08-31 17:51:11: vi .git/config 
  409  2013-08-31 17:51:28: git annex get file 
3_doors_down/away_from_the_sun/01-when_im_gone.ogg --from origin
  410  2013-08-31 17:51:34: git annex get file 
3_doors_down/away_from_the_sun/01-when_im_gone.ogg --from work-desktop

(BTW, the normal walkthrough instructions result in creating two
remotes, origin and another named one, pointing to the same repo.  Is
that intentional?)

-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.10-2-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages git-annex depends on:
ii  curl            7.32.0-1
ii  git             1:1.8.4~rc3-1
ii  libc6           2.17-92+b1
ii  libffi6         3.0.13-4
ii  libgmp10        2:5.1.2+dfsg-2
ii  libgnutls26     2.12.23-5
ii  libgsasl7       1.8.0-2
ii  libicu48        4.8.1.1-12
ii  libidn11        1.28-1
ii  libxml2         2.9.1+dfsg1-3
ii  libyaml-0-2     0.1.4-2
ii  openssh-client  1:6.2p2-6
ii  rsync           3.0.9-4
ii  wget            1.14-2
ii  zlib1g          1:1.2.8.dfsg-1

Versions of packages git-annex recommends:
ii  bind9-host   1:9.9.3.dfsg.P2-4
ii  gnupg        1.4.14-1
ii  lsof         4.86+dfsg-1
ii  quvi         0.4.2-1
ii  ssh-askpass  1:1.2.4.1-9

Versions of packages git-annex suggests:
pn  bup          <none>
ii  graphviz     2.26.3-15+b1
pn  libnss-mdns  <none>

-- no debconf information


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to