git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Jacob Keller <jacob.keller@gmail.com>
To: Stefan Beller <sbeller@google.com>
Cc: "git@vger.kernel.org" <git@vger.kernel.org>,
	Jens Lehmann <Jens.Lehmann@web.de>,
	Heiko Voigt <hvoigt@hvoigt.net>
Subject: Re: Clarification on Submodule/Subproject naming
Date: Tue, 6 Oct 2015 15:05:24 -0700	[thread overview]
Message-ID: <CA+P7+xotGb8y2M0sjXmOmG0FofJtn_wsg3ASo-K62Ea9hk2mkQ@mail.gmail.com> (raw)
In-Reply-To: <CAGZ79kYyagjxyV0Da3FW3zWuJ+wD=FTPvzYebV7ER4TjTnMXpg@mail.gmail.com>

On Tue, Oct 6, 2015 at 3:00 PM, Stefan Beller <sbeller@google.com> wrote:
> So a discussing started in a Gerrit change [1] if we want to name it
> submodule or subproject.
> We decided to stick with the git core convention of naming it
> subproject for now.
>
> But that lead me to the question: What is the difference of a
> submodule and a subproject?
>
> As far as I can tell they are synonyms (internally also called
> GIT_LINK, but we never expose that to the users), where the term
> submodule was coined later in the game, subproject being there as the
> first term introduced in version 1.5.
>
> So is it worth to unify that same concept hiding between two names?
>

I think it would be worth trying to sync up at least documentation if
possible, and maybe even change the diff core output, but that depends
on whether we think changing that would break anyone? I'm not sure who
it would hurt to just start using "submodule" instead of "subproject"
there?

> Looking through the code we cannot switch to submodule as the literal
> string "subproject"
> is used for diffs in the plumbing layer.

Is there a strong reason we can't just change the diff layer to
"submodule" here? I'm not sure who or what that would hurt.

>
> But getting rid of submodule is also not easy, as there is
> git-submodule.sh as a direct command.
>

I think we should stick to submodule as that is the name of the
command as well as the general term understood by most users.
Subproject is the older name that was used before submodule.

> So then there is also git subtree, which "allow subprojects to be
> included within a subdirectory of the main project, optionally
> including the subproject’s entire history." (the man page)

I think the term subproject used here is used in a general sense, and
not in the specific sense used elsewhere.

>
> So can I understand a subproject as either a submodule or a subtree ?
> If so would it make sense to add an entry to gitglossary to state that
> subprojects are generic term for
> having some kind of structure? (a subdirectory containing independent
> stuff could be considered a
> subproject. i.e. We could make contrib/examples the historic-git subproject ?)
>

In terms of git diff core, subtrees are not shown as "subproject" in
the diffs at all, so I think in that sense subproject there is just an
artifact of what got used in the past.

> Any advice welcome!
> Stefan
>
> [1] https://gerrit-review.googlesource.com/#/c/70948/

  reply	other threads:[~2015-10-06 22:06 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-06 22:00 Clarification on Submodule/Subproject naming Stefan Beller
2015-10-06 22:05 ` Jacob Keller [this message]
2015-10-07  7:37 ` Jens Lehmann

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

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CA+P7+xotGb8y2M0sjXmOmG0FofJtn_wsg3ASo-K62Ea9hk2mkQ@mail.gmail.com \
    --to=jacob.keller@gmail.com \
    --cc=Jens.Lehmann@web.de \
    --cc=git@vger.kernel.org \
    --cc=hvoigt@hvoigt.net \
    --cc=sbeller@google.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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).