Skip to contentSkip to conversation

Remote 'master' not updated, but works somehow

DISCUSSION Andreas Ericsson 2 participants 3 messages Aug 11, 2016

lore
Share & tools
lore
#0 lore raw

Having for a long time been thoroughly annoyed by our strict umasks, I decided to write a little program to deal with it, and naturally I put it in a git repo. After the initial commit (c0fa1db09bad112f7271378d907bf33d74c06f6b) I published it to my git space on our development server and cloned it out again (to get the nifty remotes things set up for free).

Then I noticed I had rushed it, as I usually do with hacks involving a total of less than 200 lines of code, so I had to make a couple of more commits to make it work.

After having pushed the fixes to the public site I went to have a look at it in gitweb, at https://devel.op5.se/~exon/git/

I was quite surprised to find that 'master' was still pointing to the root commit. After the usual culprits were excluded (permissions, bad paths, whatnot), I decided to try to clone the repo again to a different location.

Here's what happened:

devel!exon:~$ git clone softpub/mkpub.git/ mkpub
remote: Generating pack...
remote: Done counting 17 objects.
remote: Deltifying 17 objects.
remote:  100% (17/17) done
Indexing 17 objects.
remote: Total 17 (delta 3), reused 0 (delta 0)
 100% (17/17) done
Resolving 3 deltas.
devel!exon:~$ cat softpub/mkpub.git/refs/heads/master
c0fa1db09bad112f7271378d907bf33d74c06f6b
devel!exon:~$ cat mkpub/.git/refs/heads/master
5ba01a4709bcc8b482b207ba91d78ddb689a4091
devel!exon:~$ cd mkpub/
devel!exon:~/mkpub$ git push
Everything up-to-date
devel!exon:~/mkpub$ git rev-list master
5ba01a4709bcc8b482b207ba91d78ddb689a4091
e6a80831737517aa7ef29628429a18935b71de1d
8926e1519f69d95685ab5252886e7b237e21108e
c0bfedaf572ee550af7927acb89a1a2e01c1ef2c
c0fa1db09bad112f7271378d907bf33d74c06f6b
devel!exon:~/mkpub$ GIT_DIR=../softpub/mkpub.git/ git rev-list master
c0fa1db09bad112f7271378d907bf33d74c06f6b

(yes, the repo only has 4 commits)

And that's where I am now. Note that *cloning* from the repo actually works, although I can't for the life of me figure out why.

Any thoughts?

Signature · 2 lines
Andreas Ericsson                   [email protected]
OP5 AB                             www.op5.se
#1 lore raw

scratch this. I just noticed I had somehow managed to get the directory setup like this:

devel:softpub/mkpub.git <-- a real repo
devel:softpub/mkpub.git/.git <-- the repo that got pushed to

Quoted 42 lines · Andreas Ericsson

Having for a long time been thoroughly annoyed by our strict umasks, I decided to write a little program to deal with it, and naturally I put it in a git repo. After the initial commit (c0fa1db09bad112f7271378d907bf33d74c06f6b) I published it to my git space on our development server and cloned it out again (to get the nifty remotes things set up for free).

Then I noticed I had rushed it, as I usually do with hacks involving a total of less than 200 lines of code, so I had to make a couple of more commits to make it work.

After having pushed the fixes to the public site I went to have a look at it in gitweb, at https://devel.op5.se/~exon/git/

I was quite surprised to find that 'master' was still pointing to the root commit. After the usual culprits were excluded (permissions, bad paths, whatnot), I decided to try to clone the repo again to a different location.

Here's what happened:

devel!exon:~$ git clone softpub/mkpub.git/ mkpub
remote: Generating pack...
remote: Done counting 17 objects.
remote: Deltifying 17 objects.
remote:  100% (17/17) done
Indexing 17 objects.
remote: Total 17 (delta 3), reused 0 (delta 0)
 100% (17/17) done
Resolving 3 deltas.
devel!exon:~$ cat softpub/mkpub.git/refs/heads/master
c0fa1db09bad112f7271378d907bf33d74c06f6b
devel!exon:~$ cat mkpub/.git/refs/heads/master
5ba01a4709bcc8b482b207ba91d78ddb689a4091
devel!exon:~$ cd mkpub/
devel!exon:~/mkpub$ git push
Everything up-to-date
devel!exon:~/mkpub$ git rev-list master
5ba01a4709bcc8b482b207ba91d78ddb689a4091
e6a80831737517aa7ef29628429a18935b71de1d
8926e1519f69d95685ab5252886e7b237e21108e
c0bfedaf572ee550af7927acb89a1a2e01c1ef2c
c0fa1db09bad112f7271378d907bf33d74c06f6b
devel!exon:~/mkpub$ GIT_DIR=../softpub/mkpub.git/ git rev-list master
c0fa1db09bad112f7271378d907bf33d74c06f6b

(yes, the repo only has 4 commits)

And that's where I am now. Note that *cloning* from the repo actually works, although I can't for the life of me figure out why.

Any thoughts?

Signature · 2 lines
Andreas Ericsson                   [email protected]
OP5 AB                             www.op5.se
#2 lore raw
Quoted 5 lines · Andreas Ericsson

scratch this. I just noticed I had somehow managed to get the directory setup like this:

devel:softpub/mkpub.git <-- a real repo
devel:softpub/mkpub.git/.git <-- the repo that got pushed to

One's gotta wonder how that's ever a valid directory setup...

Although I'm running a configuration of:

root/proj.git <-- a real repo
root/proj.git/info/new-commit-check <-- a fake repo

where new-commit-check has root/proj.git not only as an alternate ODB but also has root/proj.git/refs symlinked into its own refs directory.