From: Jakub Narebski <jnareb@gmail.com>
To: "Ian Dees" <undees@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: Completion message for git-clone?
Date: Fri, 08 Feb 2008 02:01:21 -0800 (PST) [thread overview]
Message-ID: <m3ejbn4vis.fsf@localhost.localdomain> (raw)
In-Reply-To: <ad4f9af90802071909s4dad180as26b2dd8b7600342f@mail.gmail.com>
"Ian Dees" <undees@gmail.com> writes:
> Hi, all. Upon cloning a repository, the initial message reads:
>
> Initialized empty Git repository in path/to/new-repo/.git
> 0 blocks
>
> I'd wager "empty" means, "empty because Git is about to populate it."
> Even so, this wording could be a bit surprising to new adopters,
> especially coupled with the "0 blocks" suffix (is it really creating
> hardlinks on NTFS?). The impression is that the clone didn't work.
> The impression is, of course, eventually dispelled by looking inside
> the new directory. Is there a way to clarify the overall status of
> the clone operation?
This is caused by the fact that for now git-clone is a shell script,
which creates empty repository using git-init (The "Initialized..."
message is from git-init), then configures it and populates it.
For local clones it uses cpio for hardlinking: the "0 blocks" is
from cpio.
It shouldn't be hard to add message which would confirm successful
completion of the clone if it is local clone; the messages from
git-fetch are I think enough indication that clone succeeded...
but perhaps we would want to add final message anyway.
Nevertheless git-clone waits to be rewritten in C anyway, so
there is no much initiative to improve shell version. The stumbling
blocks are as far as I can remember moving detection of which branch
is currently checked out to git-remote, and optionally adding
symbolic-ref extension to git transfer protocol for git to not have to
guess which branch is HEAD.
> One other minor thing I noticed while futzing with clones: if you try
> to clone an empty repository, you get the same "Initialized empty
> repository" message, even though no such second directory is created.
> I'm not suggesting Git should suddenly start allowing empty cloning,
> but perhaps a "Empty repository; skipping clone" message would be
> helpful.
$ git clone a b
Initialized empty Git repository in /tmp/b/.git/
fatal: cannot clone empty repository
$ git --version
git version 1.5.4
Perhaps git should check if there is anything to clone _before_
git-init, or do not remove empty directory after failing to fetch.
--
Jakub Narebski
Poland
ShadeHawk on #git
next prev parent reply other threads:[~2008-02-08 10:02 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-08 3:09 Completion message for git-clone? Ian Dees
2008-02-08 8:29 ` Jeff King
2008-02-08 10:01 ` Jakub Narebski [this message]
2008-02-08 16:23 ` Ian Dees
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m3ejbn4vis.fsf@localhost.localdomain \
--to=jnareb@gmail.com \
--cc=git@vger.kernel.org \
--cc=undees@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.