git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Joey Hess <joey@kitenet.net>
To: git@vger.kernel.org
Subject: Re: Please discuss: what "git push" should do when you do not say what to push?
Date: Sat, 17 Mar 2012 10:00:30 -0400	[thread overview]
Message-ID: <20120317140030.GA27369@gnu.kitenet.net> (raw)
In-Reply-To: <7v7gyjersg.fsf@alter.siamese.dyndns.org>

[-- Attachment #1: Type: text/plain, Size: 1899 bytes --]

I'd like to point out a use case for the current push behavior
that has probably not been considered. I've written several tools
that store data on subsidiary git branches. 

One is pristine-tar, in which information necessarily to reconstruct
bit-identical tarballs containing the source in (say) master is stored
efficiently in the pristine-tar branch. Another is git-annex, in which
bookeeping information about the actual location of large files is
stored in the git-annex branch. These are not unlike git notes, other
than not being built into git. I'm not the only one doing this, other
examples I know of include several bug trackers (git-case, git-issues,
ticgit).

The current push behavior works well for these subsidiary branches.
But if users have to remember to manually push these branches, which they
do not otherwise manually interact with, they'll forget. I know this
will be confusing, because with current git, users have to be instructed
to push these branches *once*, to get the tracking set up.

I feel that this use of subsidiary branches expands the reach of git;
there are reasons that Fossil is pulling other ancillary data
(bugs, wiki, blog etc) into DVCS. But it makes the mistake, IMHO, of
bundling all that together into one peice of software. Git allows doing
the same things, but loosely coupled, so the best implementation of each
can win.

There might be some way to handle such subsidiary branches while
still changing the push default. If git prints a good enough warning
about other, unpushed matching branches, the user only has to do a
little more work to push them. If a hook was available that could
add branches to the set to be pushed, it could automate pushing
such branches. Or git could get a way to mark one branch as a subsidiary
branch of another, and automatically include subsidiaries in pushes.

-- 
see shy jo

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 828 bytes --]

  parent reply	other threads:[~2012-03-17 14:07 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-17  5:10 Please discuss: what "git push" should do when you do not say what to push? Junio C Hamano
2012-03-17  5:22 ` Junio C Hamano
2012-03-17 10:05   ` Andrew Sayers
2012-03-18 18:50     ` Junio C Hamano
2012-03-18 21:26       ` Ævar Arnfjörð Bjarmason
2012-03-19  0:29         ` Junio C Hamano
2012-03-19  7:29           ` Sebastien Douche
2012-03-19 20:11       ` Andrew Sayers
2012-03-19 21:43         ` Junio C Hamano
2012-03-19 22:20           ` demerphq
2012-03-19 22:38             ` Junio C Hamano
2012-03-20 10:00               ` Andreas Ericsson
2012-03-19 22:47           ` Andrew Sayers
2012-03-19 22:59             ` Junio C Hamano
2012-03-20 21:20               ` Andrew Sayers
2012-03-20 23:09                 ` Junio C Hamano
2012-03-20 23:41                   ` Andrew Sayers
2012-03-21  0:25                     ` Junio C Hamano
2012-03-20 14:12   ` Martin Langhoff
2012-03-20 15:28     ` Junio C Hamano
2012-03-20 18:31       ` Martin Langhoff
2012-03-20 16:43     ` Jakub Narebski
2012-03-21 17:54   ` Summary of discussion on "git push" default change Junio C Hamano
2012-03-21 18:05     ` Matthieu Moy
2012-03-17 14:00 ` Joey Hess [this message]
2012-03-19  0:36   ` Please discuss: what "git push" should do when you do not say what to push? Junio C Hamano
2012-03-17 18:43 ` fREW Schmidt
2012-03-18  4:02   ` H. Peter Anvin
2012-03-18  5:43     ` Marcus D. Hanwell
2012-03-18 16:52   ` Sebastian Schuberth
2012-03-19  9:07 ` Peter Krefting
2012-03-19  9:35   ` Letting remote repositories override local configuration Jonathan Nieder
2012-03-19 12:21     ` Peter Krefting
2012-03-19 18:57 ` Please discuss: what "git push" should do when you do not say what to push? Kevin Ballard
2012-03-20  2:27 ` Antony Male
2012-03-20 12:04   ` Jakub Narebski
2012-03-20 13:04     ` Antony Male
2012-03-20  7:13 ` Nathan Gray
2012-03-20 12:00   ` Ben Tebulin
2012-03-20 12:00   ` Ben Tebulin
2012-03-20 12:00   ` Ben Tebulin
2012-03-20 12:01   ` Ben Tebulin
2012-03-20 12:36 ` Filipe Fernandes
  -- strict thread matches above, loose matches on Subject: below --
2012-03-19 18:26 Michael K. Johnson

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=20120317140030.GA27369@gnu.kitenet.net \
    --to=joey@kitenet.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 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).