git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: "W. Trevor King" <wking@tremily.us>
Cc: Git <git@vger.kernel.org>, Heiko Voigt <hvoigt@hvoigt.net>,
	Jeff King <peff@peff.net>, Phil Hord <phil.hord@gmail.com>,
	Shawn Pearce <spearce@spearce.org>,
	Jens Lehmann <Jens.Lehmann@web.de>,
	Nahor <nahor.j+gmane@gmail.com>
Subject: Re: [PATCH v6 2/4] submodule update: add --remote for submodule's upstream changes
Date: Mon, 03 Dec 2012 12:29:05 -0800	[thread overview]
Message-ID: <7vr4n6q3qm.fsf@alter.siamese.dyndns.org> (raw)
In-Reply-To: <20121203183802.GD14981@odin.tremily.us> (W. Trevor King's message of "Mon, 03 Dec 2012 13:38:02 -0500")

"W. Trevor King" <wking@tremily.us> writes:

> As an example to make this clearer:
>
>   $ cat .gitmodules
>   [submodule "sub1"]
>     path = sub1
>     url = git://example.com/sub1.git
>     remote = remote1
>     branch = branch1
>     update-source = submodule-upstream
>     update = rebase
>   [submodule "sub2"]
>   ...

Maybe it is just me but that "remote = remote1" sticks out like a
sore thumb.

If you are showing the .gitmodules file to be shared as hints to
project participants, why does it even need to have both URL and
remote1?  If remote1 points at some other repository, the recipient
of this .gitmodules file would not have any clue where it is.  If
remote1 points at the same repository as the URL, why should it be
there in the first place?  The superproject is in no business to
force what local remote name each participant would call in their
submodule checkout, and more importantly, there is no _need_ to do
so.

We could extend that reasoning to the branch name (which is also a
local matter, at least technically), but this is a lot more
justifiable.  If the upstream of the superproject is the same
organization as the upstream of the submodule project, which is
often the case when a large project is organized as a forest of
submodules bound at the top-level with a superproject, the
superproject commit on a particular superproject branch may want any
update necessary to complete the superproject made to submodules on
specific branches at the central meeting place.  The superproject's
Milestone22 branch may want to bind commits that is on submodule's
Milestone22 branch.

While a participant locally *can* create M22 branch in the submodule
and set it to build upon Milestone22 branch taken from the central
repository, most people don't.  They use the same branch names
between local and remote (i.e. refs/heads/*:refs/remotes/origin/* to
keep the remote-tracking branches under the same name, and the local
branch $any builds upon the corresponding remote-tracking branch
refs/remotes/origin/$any.  Most importantly, the work done on local
branch $any is pushed out to refs/heads/$any at the remote of the
submodule).  Because of how people use "push" to push $any branch to
the branch of the same name $any at the central meeting place, and
because the upstream wants participants to use a particular branch
name in the submodule at the central meeting place, the set-up ends
up dictating what local branch name should be used.

But I do not see any reason to require or even suggest any local
nickname that is to be used to call the remote.  It really is a
local matter.  Why should .gitmodules have "remote = ..." line?

On the other hand, if you meant the above as an excerpt from
$GIT_DIR/config, it also does not make sense.  At that point, the
participant own the file and updating url to point at whatever
different repository without changing the remote name is sufficient.

It looks way over-engineered for unclear/dubious benefit.

  reply	other threads:[~2012-12-03 20:29 UTC|newest]

Thread overview: 156+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-22 16:34 [PATCH] git-submodule add: Record branch name in .gitmodules W. Trevor King
     [not found] ` <CABURp0pqg7XC6makK2OcundMabV9AtcBNGNK6Q0TMZfJbt3anw@mail.gmail.com>
2012-10-22 22:55   ` W. Trevor King
2012-10-24 18:12     ` Phil Hord
2012-10-25  1:12       ` W. Trevor King
2012-10-26 13:37         ` Jeff King
2012-10-23 19:16 ` Nahor
2012-10-23 19:44   ` W. Trevor King
2012-10-23 20:44     ` W. Trevor King
2012-10-23 21:57       ` [PATCH v2] git-submodule add: Add -r/--record option W. Trevor King
2012-10-24 19:15         ` Jens Lehmann
2012-10-25  0:53           ` W. Trevor King
2012-10-28 20:48             ` Jens Lehmann
2012-10-28 21:16               ` W. Trevor King
2012-10-28 21:59               ` Shawn Pearce
2012-10-28 22:34                 ` W. Trevor King
2012-10-29  5:34                   ` Jeff King
2012-10-29 10:45                     ` W. Trevor King
2012-10-29 10:58                       ` Jeff King
2012-10-29 11:29                         ` W. Trevor King
2012-10-29 11:43                           ` Jeff King
2012-10-29 17:38                             ` Phil Hord
2012-10-29 21:36                               ` Jeff King
2012-10-29 22:21                                 ` Phil Hord
2012-10-29 22:27                                   ` Jeff King
2012-11-09  3:35                                     ` [PATCH v3 0/3] " W. Trevor King
2012-11-09  3:35                                     ` [PATCH v3 1/3] " W. Trevor King
2012-11-09  7:34                                       ` Junio C Hamano
2012-11-09 16:29                                         ` Heiko Voigt
2012-11-10 19:02                                           ` W. Trevor King
2012-11-17 15:04                                             ` Heiko Voigt
2012-11-17 19:20                                               ` W. Trevor King
2012-11-17 21:31                                                 ` Heiko Voigt
2012-11-17 22:00                                                   ` W. Trevor King
2012-11-20  0:49                                                 ` Junio C Hamano
2012-11-20  1:16                                                   ` W. Trevor King
2012-11-20  5:39                                                     ` Junio C Hamano
2012-11-20 12:19                                                       ` W. Trevor King
2012-11-20 19:52                                                         ` Junio C Hamano
2012-11-23 15:55                                                           ` Heiko Voigt
2012-11-23 16:23                                                             ` W. Trevor King
2012-11-23 16:30                                                               ` W. Trevor King
2012-11-23 17:54                                                               ` W. Trevor King
2012-11-26 21:00                                                                 ` [PATCH v4 0/4] git-submodule add: Add --local-branch option W. Trevor King
2012-11-26 21:00                                                                   ` [PATCH v4 1/4] " W. Trevor King
2012-11-26 21:00                                                                   ` [PATCH v4 2/4] git-submodule init: Record submodule.<name>.branch in repository config W. Trevor King
2012-11-27 23:19                                                                     ` Jens Lehmann
2012-11-28  0:40                                                                       ` W. Trevor King
2012-11-30 17:53                                                                       ` [RFC] remove/deprecate 'submodule init' and 'sync' W. Trevor King
2012-11-30 18:17                                                                         ` W. Trevor King
2012-11-30 23:52                                                                         ` Phil Hord
2012-12-01 12:48                                                                           ` W. Trevor King
2012-12-01 15:42                                                                             ` Jens Lehmann
2012-12-01 15:56                                                                           ` Jens Lehmann
2012-12-01 16:37                                                                             ` W. Trevor King
2012-12-01 16:45                                                                             ` [PATCH] submodule: add 'deinit' command Jens Lehmann
2012-12-02  2:00                                                                               ` Junio C Hamano
2012-12-02 19:55                                                                                 ` Jens Lehmann
2012-12-03  7:58                                                                                   ` Junio C Hamano
2012-12-04 21:48                                                                                     ` [PATCH v2] " Jens Lehmann
2012-12-04 23:06                                                                                       ` Junio C Hamano
2012-12-12 15:08                                                                                       ` Michael J Gruber
2012-12-12 17:22                                                                                         ` Jens Lehmann
2012-12-12 19:32                                                                                           ` Junio C Hamano
2012-12-12 22:25                                                                                             ` Jens Lehmann
2012-12-12 22:34                                                                                               ` Junio C Hamano
2012-12-12 23:09                                                                                                 ` W. Trevor King
2012-12-12 23:35                                                                                                   ` Junio C Hamano
2012-12-13  0:28                                                                                                     ` W. Trevor King
2012-12-13 15:47                                                                                               ` Marc Branchaud
2012-12-01 15:38                                                                         ` [RFC] remove/deprecate 'submodule init' and 'sync' Jens Lehmann
2012-12-01 16:30                                                                           ` W. Trevor King
2012-12-01 17:25                                                                             ` Jens Lehmann
2012-12-01 17:49                                                                               ` W. Trevor King
2012-12-01 18:04                                                                                 ` Jens Lehmann
2012-12-01 18:16                                                                                   ` W. Trevor King
2012-12-02 19:09                                                                                     ` W. Trevor King
2012-12-02 20:29                                                                                       ` Jens Lehmann
2012-12-02 21:11                                                                                         ` W. Trevor King
2012-12-01 16:54                                                                         ` W. Trevor King
2012-12-03 15:38                                                                           ` W. Trevor King
2012-11-26 21:00                                                                   ` [PATCH v4 3/4] git-submodule update: Add --branch option W. Trevor King
2012-11-27 18:51                                                                     ` Heiko Voigt
2012-11-27 20:21                                                                       ` W. Trevor King
2012-11-26 21:00                                                                   ` [PATCH v4 4/4] Hack fix for 'submodule update does not fetch already present commits' W. Trevor King
2012-11-27 18:31                                                                   ` [PATCH v4 0/4] git-submodule add: Add --local-branch option Heiko Voigt
2012-11-27 19:04                                                                     ` W. Trevor King
2012-11-27 19:16                                                                     ` Heiko Voigt
2012-11-27 19:01                                                                 ` W. Trevor King
2012-11-27 21:18                                                                   ` [PATCH v4 4/4] Hack fix for 'submodule update does not fetch already present commits' W. Trevor King
2012-11-27 23:28                                                                   ` Re: [PATCH v4 0/4] git-submodule add: Add --local-branch option Heiko Voigt
2012-11-28  2:42                                                                     ` W. Trevor King
2012-11-29 18:51                                                                       ` Phil Hord
2012-11-23 17:24                                                             ` [PATCH v3 1/3] git-submodule add: Add -r/--record option Sascha Cunz
2012-11-23 16:03                                                         ` Heiko Voigt
2012-11-28 13:09                                           ` [PATCH v4 0/4] git-submodule add: Add --local-branch option (summary) W. Trevor King
2012-11-28 16:53                                             ` W. Trevor King
2012-11-28 19:30                                               ` [PATCH v5 0/2] submodule update: add --remote for submodule's upstream changes W. Trevor King
2012-11-28 19:30                                                 ` [PATCH v5 1/2] " W. Trevor King
2012-11-28 19:30                                                 ` [PATCH v5 2/2] submodule add: If --branch is given, record it in .gitmodules W. Trevor King
2012-11-29 16:12                                                 ` [RFC] git-submodule update: Add --commit option W. Trevor King
2012-11-29 16:21                                                   ` W. Trevor King
2012-11-29 16:27                                                   ` W. Trevor King
2012-11-29 19:13                                                 ` [PATCH v5 0/2] submodule update: add --remote for submodule's upstream changes W. Trevor King
2012-11-30  1:11                                                   ` Phil Hord
2012-11-30  3:27                                                     ` W. Trevor King
2012-12-02  3:17                                                       ` [PATCH v6 0/4] " W. Trevor King
2012-12-02  3:17                                                         ` [PATCH v6 1/4] submodule: add get_submodule_config helper funtion W. Trevor King
2012-12-03 19:30                                                           ` Junio C Hamano
2012-12-04  0:17                                                             ` W. Trevor King
2012-12-11 18:58                                                               ` [PATCH v7 0/3] submodule update: add --remote for submodule's upstream changes W. Trevor King
2012-12-11 18:58                                                                 ` [PATCH v7 1/3] submodule: add get_submodule_config helper funtion W. Trevor King
2012-12-11 18:58                                                                 ` [PATCH v7 2/3] submodule update: add --remote for submodule's upstream changes W. Trevor King
2012-12-12 17:43                                                                   ` Phil Hord
2012-12-12 19:54                                                                     ` Junio C Hamano
2012-12-12 23:02                                                                     ` W. Trevor King
2012-12-19 16:03                                                                       ` [PATCH v8 0/3] " wking
2012-12-19 16:03                                                                         ` [PATCH v8 1/3] submodule: add get_submodule_config helper funtion wking
2012-12-21  8:20                                                                           ` Heiko Voigt
2012-12-21 11:04                                                                             ` W. Trevor King
2012-12-19 16:03                                                                         ` [PATCH v8 2/3] submodule update: add --remote for submodule's upstream changes wking
2012-12-19 16:03                                                                         ` [PATCH v8 3/3] submodule add: If --branch is given, record it in .gitmodules wking
2012-12-19 17:43                                                                           ` Junio C Hamano
2012-12-21  8:18                                                                         ` [PATCH v8 0/3] submodule update: add --remote for submodule's upstream changes Heiko Voigt
2012-12-11 18:58                                                                 ` [PATCH v7 3/3] submodule add: If --branch is given, record it in .gitmodules W. Trevor King
2012-12-12  5:42                                                                 ` [PATCH v7 0/3] submodule update: add --remote for submodule's upstream changes Junio C Hamano
2012-12-12 15:24                                                                   ` W. Trevor King
2012-12-12 18:19                                                                     ` Junio C Hamano
2012-12-12 22:44                                                                       ` W. Trevor King
2012-12-02  3:17                                                         ` [PATCH v6 2/4] " W. Trevor King
2012-12-03 16:46                                                           ` Junio C Hamano
2012-12-03 18:15                                                             ` W. Trevor King
2012-12-03 18:38                                                               ` W. Trevor King
2012-12-03 20:29                                                                 ` Junio C Hamano [this message]
2012-12-02  3:17                                                         ` [PATCH v6 3/4] submodule add: If --branch is given, record it in .gitmodules W. Trevor King
2012-12-02  3:17                                                         ` [PATCH v6 4/4] submodule update: add submodule.<name>.remote config option W. Trevor King
2012-12-02 19:32                                                       ` [PATCH v5 0/2] submodule update: add --remote for submodule's upstream changes Jens Lehmann
2012-11-10 18:44                                         ` [PATCH v3 1/3] git-submodule add: Add -r/--record option W. Trevor King
2012-11-11 10:33                                           ` Junio C Hamano
2012-11-11 15:00                                             ` W. Trevor King
2012-11-17 15:30                                               ` Heiko Voigt
2012-11-28 19:42                                             ` W. Trevor King
2012-11-28 20:08                                               ` Junio C Hamano
     [not found]                                       ` <20121109104607.GC4406@ftbfs.org>
2012-11-10 19:11                                         ` W. Trevor King
2012-11-09  3:35                                     ` [PATCH v3 2/3] git-submodule foreach: export .gitmodules settings as variables W. Trevor King
2012-11-09 16:45                                       ` Heiko Voigt
2012-11-10 19:21                                         ` W. Trevor King
2012-11-09  3:35                                     ` [PATCH v3 3/3] git-submodule: Motivate --record with an example use case W. Trevor King
2012-10-25 22:14         ` [PATCH v2] git-submodule add: Add -r/--record option W. Trevor King
2012-10-26 14:00           ` Jeff King
2012-10-23 21:45     ` [PATCH] git-submodule add: Record branch name in .gitmodules Nahor
2012-10-23 20:36   ` Jens Lehmann
2012-10-23 20:55     ` W. Trevor King
2012-10-23 22:02     ` Nahor
2012-10-24 19:10       ` Jens Lehmann
  -- strict thread matches above, loose matches on Subject: below --
2012-11-28 18:28 [PATCH] submodule update: document exisiting -r form for --rebase W. Trevor King
2012-11-28 19:02 ` 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

  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=7vr4n6q3qm.fsf@alter.siamese.dyndns.org \
    --to=gitster@pobox.com \
    --cc=Jens.Lehmann@web.de \
    --cc=git@vger.kernel.org \
    --cc=hvoigt@hvoigt.net \
    --cc=nahor.j+gmane@gmail.com \
    --cc=peff@peff.net \
    --cc=phil.hord@gmail.com \
    --cc=spearce@spearce.org \
    --cc=wking@tremily.us \
    /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).