Re: Some issues working with empty/bare repositories...
- From
Jeff King <peff@peff.net>
- Date
- Mar 3, 2008, 08:10 UTC
- Message-ID
- <20080303081021.GA6578@sigill.intra.peff.net>
- In-Reply-To
- <3f4fd2640803011140o38ba0830l7775c8528f812779@mail.gmail.com>
On Sat, Mar 01, 2008 at 07:40:39PM +0000, Reece Dunn wrote:
Show 11 quoted lines
> Consider the following workflow: > > $ mkdir foo > $ cd foo > $ git --bare init > > $ git log > fatal: bad default revision 'HEAD' > > This message is confusing for a newbie. Displaying "no commits" would > make more sense here.
The tricky thing here is that "git log" doesn't know we have no commits in the repo; it only knows that HEAD is bogus. But it may be that we can just say something like:
fatal: unable to resolve HEAD; do you have any commits?
> $ git clone foo bar > Initialized empty Git repository in /home/reece/bar/.git/ > $ ls -a /home/reece > . .. foo
As of 1.5.4, this now says "fatal: cannot clone empty repository". There has been work recently on a C version of clone which tries to match the sequence of "init && remote add && fetch && checkout" more closely. I haven't looked closely, but I suspect it may just work (by which I mean create an empty repo with origin config pointing to the parent repo).
> It appears from the git output (with the inconsistently capitalized > git - see --version output above) that the clone succeeded, but it > does not create bar/.git/, even though it said that it did.
It did create it...it just deleted it afterwards without telling you. :)
-Peff