git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Fredrik Gustafsson <iveqy@iveqy.com>
To: git@vger.kernel.org
Cc: gitster@pobox.com, iveqy@iveqy.com, jens.lehmann@web.de,
	hvoigt@hvoigt.net
Subject: [PATCH v2 0/3] check for unpushed remotes in submodules
Date: Wed, 27 Jul 2011 20:10:47 +0200	[thread overview]
Message-ID: <1311790250-32454-1-git-send-email-iveqy@iveqy.com> (raw)

When working with submodules it is easy to end up in a state when submodule
commits required by the superproject only is present locally. This is most
often a human error (although technical errors such as connection failure
can be a reason).

This patch-series tries to prevent pushing a superproject if not all (by
the superproject used) submodules are pushed first. This will prevent the
human error of forgetting to push submodules before pushing the
superproject.

The first iteration of this patch series can be found here:
http://thread.gmane.org/gmane.comp.version-control.git/176328/focus=176327

The changes from the previous iteration are in patch 0003.

Regarding the discussion of superprojects with submodules that have no
remote tracking branches: A push will still be denied.  After some
discussion we did not consider this a drawback since all submodules that
are added/handled using the submodule script will have remote tracking
branches. Even if the submodules are not pushable when the superproject
records a commit that is reachable from a remote branch the push will not
be denied.

A new test is added in this iteration to show a bug that now is fixed.

Fredrik Gustafsson (2):
  push: Don't push a repository with unpushed submodules
  push: Add the --no-recurse-submodules option

Heiko Voigt (1):
  test whether push checks for unpushed remotes in submodules

 Documentation/git-push.txt     |    6 ++
 builtin/push.c                 |    1 +
 submodule.c                    |  115 ++++++++++++++++++++++++++++++++++++++++
 submodule.h                    |    1 +
 t/t5531-deep-submodule-push.sh |   99 ++++++++++++++++++++++++++++++++++
 transport.c                    |   10 ++++
 transport.h                    |    1 +
 7 files changed, 233 insertions(+), 0 deletions(-)

-- 
1.7.6.236.g7ad21

             reply	other threads:[~2011-07-27 18:10 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-27 18:10 Fredrik Gustafsson [this message]
2011-07-27 18:10 ` [PATCH v2 1/3] test whether push checks for unpushed remotes in submodules Fredrik Gustafsson
2011-07-27 18:10 ` [PATCH v2 2/3] push: Don't push a repository with unpushed submodules Fredrik Gustafsson
2011-07-27 18:10 ` [PATCH v2 3/3] push: Add the --no-recurse-submodules option Fredrik Gustafsson
2011-07-28 20:05   ` Junio C Hamano
2011-07-28 22:22     ` Jens Lehmann
2011-07-29 20:19     ` Jens Lehmann
2011-08-01  1:16       ` Junio C Hamano
2011-07-28 19:58 ` [PATCH v2 0/3] check for unpushed remotes in submodules Junio C Hamano
2011-07-28 22:14   ` 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

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

  git send-email \
    --in-reply-to=1311790250-32454-1-git-send-email-iveqy@iveqy.com \
    --to=iveqy@iveqy.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=hvoigt@hvoigt.net \
    --cc=jens.lehmann@web.de \
    /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).