From: Neil Macneale Date: Mon, 19 Jan 2009 05:37:54 GMT Subject: Re: [HELP] A local branch has disappeared Message-ID: In-Reply-To: <488807870901181954p558756f5v94c8a6681125e8bb@mail.gmail.com> On Jan 18, 2009, at 7:54 PM, Johnny Lee wrote: > Hi all, > > Today I found my current branch (named cupcake) has disappeared. > git@tomato:~/golf$ git branch -a > htc_cupcake > tmo_cupcake > origin/HEAD > origin/cupcake > origin/device > > As you can see, there is no "*" to mark the current branch. > > But when I check the HEAD, it still pointed to the cupcake branch > git@tomato:~/golf$ cat .git/HEAD > ref: refs/heads/cupcake > > But when I check the ref/heads, the cupcake is missing > git@tomato:~/golf$ ls .git/refs/heads/ > htc_cupcake tmo_cupcake > > And the cupcake in still in the config: > git@tomato:~/golf$ cat .git/config > [core] > repositoryformatversion = 0 > filemode = true > bare = false > logallrefupdates = true > sharedRepository = 1 > [remote "origin"] > url = /home/rick/golfresort/device/.git > fetch = +refs/heads/*:refs/remotes/origin/* > [branch "cupcake"] > remote = origin > merge = refs/heads/cupcake > > I'm confused: > 1. I didn't do any aggressive operations. Why the branch has > disappeared? Normally I have done these operation for this repo: > i. pull from parent repo > ii. cloned by children repo > iii. pulled by children repo > iv. pushed from children repo > 2. Is there any way to resume the cupcake branch? Can I manually add > the cupcake to ref/heads? I don't know why the cupcake branch would be gone, but you can probably get something from the logs: $ cat .git/logs/refs/heads/cupcake The last line should tell you what commit you were at before it was destroyed. Then you can create the branch again. $ git checkout -b cupcake Hope that helps, Neil