All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Andrew Keller <andrew@kellerfarm.com>
Cc: Henri GEIST <geist.henri@laposte.net>,
	Git List <git@vger.kernel.org>,
	Jens Lehmann <Jens.Lehmann@web.de>
Subject: Re: [PATCH/RFC] Documentation: Say that submodule clones use a separate gitdirs.
Date: Mon, 10 Mar 2014 08:31:41 -0700	[thread overview]
Message-ID: <xmqq61nmrrxe.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <B2A4F350-1F20-4ABA-80A6-CF244DD7FAFD@kellerfarm.com> (Andrew Keller's message of "Sun, 9 Mar 2014 19:24:04 -0400")

Andrew Keller <andrew@kellerfarm.com> writes:

> On Mar 7, 2014, at 7:50 PM, Henri GEIST wrote:
> ...
>> To give one of my project to someone else I have copied it on a USB key.
>> By a simple drag and drop with the mouse.
>> And I am quite sure I am not alone doing this way.
>> 
>> I have done those kind of things lot of time without any problem.
>> But that day 'the_project' happened to be a submodule cloned by
>> 'git submodule update' then on the USB key the $GIT_DIR of 'the_project'
>> was missing.
>> 
>> If 'man git-submodule' have made me aware of the particularities of submodules
>> clone I had write in a terminal:
>> 
>> git clone the_project /media/usb/the_project
>> 
>> Or at least I had understand what happened quicker.
>> 
>> I have nothing against also adding something in repository-layout but I am
>> pretty sure normal users never read repository-layout as it is not a command
>> they use. And it is not mentioned in most tutorials.
>
> How about something like this:
>
> "The git directory of a submodule lives inside the git directory of the parent repository instead of within the working directory."
>
> I'm not sure where to put it, though.

This is not limited to submodules.  There are multiple lower-level
mechanisms for a $path/.git to borrow the repository data from
elsewhere outside of $path and a cloned submodule uses only one of
them.  For any such $path, "cp -R $path $otherplace" will result in
an "$otherplace" that does not work as a Git repository in exactly
the same way, whether it happens to be a submodule checkout or not.

That is why I suggested to enhance description on a more general
part of the documentation that covers what a Git repository is.

  parent reply	other threads:[~2014-03-10 15:31 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-07  7:53 [PATCH/RFC] Documentation: Say that submodule clones use a separate gitdirs Henri GEIST
2014-03-07 21:42 ` Andrew Keller
2014-03-07 22:19   ` Junio C Hamano
2014-03-07 22:35   ` Henri GEIST
2014-03-07 23:37     ` Junio C Hamano
2014-03-08  0:50       ` Henri GEIST
2014-03-09 23:24         ` Andrew Keller
2014-03-10  7:52           ` Henri GEIST
2014-03-10 15:31           ` Junio C Hamano [this message]
2014-03-10 18:22             ` Henri GEIST
2014-03-10 19:36               ` Junio C Hamano

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=xmqq61nmrrxe.fsf@gitster.dls.corp.google.com \
    --to=gitster@pobox.com \
    --cc=Jens.Lehmann@web.de \
    --cc=andrew@kellerfarm.com \
    --cc=geist.henri@laposte.net \
    --cc=git@vger.kernel.org \
    /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.