git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sverre Rabbelier <srabbelier@gmail.com>
To: "Git List" <git@vger.kernel.org>,
	"Junio C Hamano" <gitster@pobox.com>,
	"Daniel Barkalow" <barkalow@iabervon.org>,
	"Johannes Schindelin" <Johannes.Schindelin@gmx.de>,
	"Jonathan Niede
Cc: Sverre Rabbelier <srabbelier@gmail.com>
Subject: [PATCH 4/7] remote-helpers: allow requesing the path to the .git directory
Date: Mon, 29 Mar 2010 11:48:26 -0500	[thread overview]
Message-ID: <1269881309-19690-5-git-send-email-srabbelier@gmail.com> (raw)
In-Reply-To: <1269881309-19690-1-git-send-email-srabbelier@gmail.com>

The 'gitdir' capability is reported by the remote helper if it
requires the location of the .git directory. The location of the .git
directory can then be used by the helper to store status files even
when the current directory is not a git repository (such as is the
case when cloning).

The location of the .git dir is specified as an absolute path.

Signed-off-by: Sverre Rabbelier <srabbelier@gmail.com>
---

	This should probably be advertised as a required capability,
	but I haven't looked into those yet.

 transport-helper.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/transport-helper.c b/transport-helper.c
index 2638781..c8705b7 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -170,6 +170,11 @@ static struct child_process *get_helper(struct transport *transport)
 			refspecs[refspec_nr++] = strdup(buf.buf + strlen("refspec "));
 		} else if (!strcmp(capname, "connect")) {
 			data->connect = 1;
+		} else if (!strcmp(buf.buf, "gitdir")) {
+			struct strbuf gitdir = STRBUF_INIT;
+			strbuf_addf(&gitdir, "gitdir %s\n", get_git_dir());
+			sendline(data, &gitdir);
+			strbuf_release(&gitdir);
 		} else if (mandatory) {
 			die("Unknown mandatory capability %s. This remote "
 			    "helper probably needs newer version of Git.\n",
-- 
1.7.0.3.317.gbb04ec

  parent reply	other threads:[~2010-03-29 16:49 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-29 16:48 [PATCH 0/7] remote-helpers: exporting Sverre Rabbelier
2010-03-29 16:48 ` [PATCH 1/7] clone: pass the remote name to remote_get Sverre Rabbelier
2010-03-29 16:48 ` [PATCH 2/7] clone: also configure url for bare clones Sverre Rabbelier
2010-03-29 16:48 ` [PATCH 3/7] fast-import: always create marks_file directories Sverre Rabbelier
2010-03-29 16:48 ` Sverre Rabbelier [this message]
2010-03-29 16:48 ` [PATCH 5/7] remote-helpers: add support for an export command Sverre Rabbelier
2010-03-29 17:21   ` Daniel Barkalow
2010-03-29 17:28     ` Sverre Rabbelier
2010-04-01  4:54   ` Junio C Hamano
2010-04-01 15:14     ` Sverre Rabbelier
2010-03-29 16:48 ` [PATCH 6/7] remote-helpers: add testgit helper Sverre Rabbelier
2010-03-29 16:48 ` [PATCH 7/7] remote-helpers: add tests for " Sverre Rabbelier
2010-04-12 14:24   ` Jonathan Nieder
2010-04-12 14:26     ` Sverre Rabbelier

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=1269881309-19690-5-git-send-email-srabbelier@gmail.com \
    --to=srabbelier@gmail.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=barkalow@iabervon.org \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.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).