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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).