W dniu 03.03.2011 13:43, Nguyán ThÃi Ngác Duy pisze: > Instead of creating the repository at $GIT_DIR, --real-git-dir will > tell git to put the repository there, then make $GIT_DIR a .git file > that points to --real-git-dir. > > Signed-off-by: Nguyán ThÃi Ngác Duy <pclouds@xxxxxxxxx> > --- > This makes '.git symbolic link' (what's its official name?) more > convenient to use. Previously whenever I need to create a .git link, > I need to open docs to see its format. Now all I need to do is Took me a while to find documentation for .git file format. Probably my fault, missed the gitrepository-layout link. Anyway, tried following: $ echo path > .git $ git info fatal: Invalid gitfile format: .git Maybe one solution is to improve the message - patch attached: $ git info fatal: Invalid gitfile format: .git Use gitdir: <PATH> > git init --real-git-dir=/where/real/git/is > git clone --real-git-dir=/where/real/git/is something > > I intend to make 'git init --real-git-dir' move current repo to > somewhere else if called on existing repo. > > Long term I'd like to see a init/clone hook, where I can tell git > "when I ask you to create a repo/worktree at foo, put the real repo > at ~/git/foo" Is this needed? As I understand git init --real-git-dir=/where/real/git/is should do the same as git --git-dir=/where/real/git/is && \ echo "gitdir: /where/real/git/is" > ${GIT_DIR:-.git} The other actions seems to be similarly simple. > I could use a better option name too, any suggestions? I don't understand why is this needed. It's a bit complicated at first as well. Adds extra layer to already existing .gitdir/.gitfile/GIT_DIR/--git-dir ---8<--- >From e83caf00dc007b9a2e515bb718f0d9ddb080891e Mon Sep 17 00:00:00 2001 From: Piotr Krukowiecki <piotr.krukowiecki@xxxxxxxxx> Date: Thu, 3 Mar 2011 21:51:34 +0100 Subject: [PATCH] Improve error message when gitfile has wrong format Add information what format of .git file is expected. Signed-off-by: Piotr Krukowiecki <piotr.krukowiecki@xxxxxxxxx> --- setup.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/setup.c b/setup.c index 021d013..d2d9d0b 100644 --- a/setup.c +++ b/setup.c @@ -291,7 +291,7 @@ const char *read_gitfile_gently(const char *path) die("Error reading %s", path); buf[len] = '\0'; if (prefixcmp(buf, "gitdir: ")) - die("Invalid gitfile format: %s", path); + die("Invalid gitfile format: %s\nUse gitdir: <PATH>", path); while (buf[len - 1] == '\n' || buf[len - 1] == '\r') len--; if (len < 9) -- 1.7.1 -- Piotr Krukowiecki -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html