From: Jay Soffian <jaysoffian@gmail.com>
To: Jeff King <peff@peff.net>
Cc: Johannes Schindelin <Johannes.Schindelin@gmx.de>,
Sergio Callegari <sergio.callegari@gmail.com>,
git@vger.kernel.org
Subject: Re: disallowing push to currently checked-out branch
Date: Tue, 17 Feb 2009 00:53:31 -0500 [thread overview]
Message-ID: <76718490902162153m6a524b2dv335be66a0f0294ca@mail.gmail.com> (raw)
In-Reply-To: <20090216225226.GB23764@sigill.intra.peff.net>
On Mon, Feb 16, 2009 at 5:52 PM, Jeff King <peff@peff.net> wrote:
> Actually, I think it is pulling from the non-bare repo that will get
> confusing.
>
> You are proposing to push, when pushing into a non-bare repo, into a
> push refspec like refs/incoming/ (for example). But what is your fetch
> refspec?
>
> If it fetches as usual from refs/heads/, then you have an asymmetry.
> That is, if I do "git push" on one client, then "git pull" on another
> won't fetch the changes. I have to wait for the non-bare repo to pull
> them into its refs/heads/ hierarchy (one by one, if there are multiple
> branches).
>
> So you can try putting refs/incoming into your fetch refspec if it is a
> non-bare repo. But there are two issues there:
>
> - how do you know the remote is non-bare?
>
> - now you have to "push" in the non-bare upstream in order to make
> commits available. So it no longer works to do:
>
> workstation$ cd repo && hack hack hack && commit commit commit
> laptop$ git clone workstation:repo
>
> since you will silently end up with stale results.
>
> In some ways, this is nicely rigorous: non-bare repos become
> essentially "uncontactable" remotely, and you have a de facto bare
> repo in the form of refs/incoming sitting in between. But I'm not
> sure it matches what most users want to do, and certainly it causes
> more breakage to their workflows than receive.denyCurrentBranch.
My head is playing around with two ideas now that Dscho has mentioned:
receive.localBranches = (refuse | allow)
http://thread.gmane.org/gmane.comp.version-control.git/77955/focus=78065
And PUSH_HEAD.
The idea would be for side-pushes never to update a local branch, but
to be recorded in PUSH_HEAD. You'd be able to rebase/merge local
branch on-top of changes in PUSH_HEAD. I'm trying to figure out what
can make sense when pulling from such a repo.
j.
next prev parent reply other threads:[~2009-02-17 5:55 UTC|newest]
Thread overview: 91+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-15 21:31 [RFC - draft] List of proposed future changes that are backward incompatible Junio C Hamano
2009-02-15 21:48 ` Junio C Hamano
2009-02-15 22:56 ` Jakub Narebski
2009-02-15 23:39 ` Junio C Hamano
2009-02-15 23:20 ` Heikki Orsila
2009-02-16 0:04 ` disallowing push to currently checked-out branch Jeff King
2009-02-16 1:33 ` david
2009-02-16 1:47 ` david
2009-02-16 1:30 ` Julian Phillips
2009-02-16 4:01 ` Jeff King
2009-02-16 8:33 ` Daniel Barkalow
2009-02-16 8:51 ` Junio C Hamano
2009-02-16 10:17 ` Sergio Callegari
2009-02-16 13:58 ` Jeff King
2009-02-16 17:13 ` Sergio Callegari
2009-02-16 17:33 ` Matthieu Moy
2009-02-16 17:43 ` Johannes Schindelin
2009-02-16 18:48 ` Jay Soffian
2009-02-16 20:02 ` Johannes Schindelin
2009-02-16 21:12 ` Jay Soffian
2009-02-16 21:15 ` Johannes Schindelin
2009-02-16 22:28 ` Jay Soffian
2009-02-16 22:52 ` Jeff King
2009-02-17 5:53 ` Jay Soffian [this message]
2009-02-17 11:28 ` PUSH_HEAD, was " Johannes Schindelin
2009-02-17 17:29 ` Jay Soffian
2009-02-17 19:48 ` Jeff King
2009-02-17 22:20 ` Junio C Hamano
2009-02-17 22:42 ` Jay Soffian
2009-02-17 22:54 ` Johannes Schindelin
2009-02-16 19:24 ` Sergio Callegari
2009-02-16 20:09 ` Johannes Schindelin
2009-02-16 21:42 ` Jay Soffian
2009-02-17 0:07 ` Sergio Callegari
2009-02-17 0:18 ` Johannes Schindelin
2009-02-17 0:41 ` Sergio Callegari
2009-02-17 0:56 ` Johannes Schindelin
2009-02-17 1:18 ` Junio C Hamano
2009-02-17 0:57 ` Junio C Hamano
2009-02-16 21:43 ` Junio C Hamano
2009-02-16 22:43 ` Jeff King
2009-02-16 23:23 ` Junio C Hamano
2009-02-17 0:23 ` Jeff King
2009-02-17 0:43 ` Junio C Hamano
2009-02-17 1:29 ` Jeff King
2009-02-16 3:50 ` Jeff King
2009-02-16 5:05 ` david
2009-02-16 4:05 ` Jeff King
2009-02-16 5:18 ` david
2009-02-16 4:37 ` Jeff King
2009-02-16 5:55 ` david
2009-02-16 5:06 ` Jeff King
2009-02-16 10:53 ` Johannes Schindelin
2009-02-16 10:50 ` dashed commands, was " Johannes Schindelin
2009-02-15 23:53 ` [RFC - draft] List of proposed future changes that are backward incompatible david
2009-02-15 23:01 ` Johannes Schindelin
2009-02-15 23:36 ` Junio C Hamano
2009-02-16 0:14 ` david
2009-02-15 23:18 ` Johannes Schindelin
2009-02-16 0:38 ` david
2009-02-16 0:29 ` Junio C Hamano
2009-02-16 10:23 ` Johannes Schindelin
2009-02-16 15:33 ` david
2009-02-16 14:40 ` Sverre Rabbelier
2009-02-16 0:02 ` disallowing push to currently checked-out branch Jeff King
2009-02-16 10:06 ` Sergio Callegari
2009-02-15 23:01 ` [RFC - draft] List of proposed future changes that are backward incompatible Jakub Narebski
2009-02-15 23:15 ` Johannes Schindelin
2009-02-15 23:38 ` Jakub Narebski
2009-02-16 0:35 ` david
2009-02-16 0:07 ` send-email sending shallow threads by default Jeff King
2009-02-16 0:09 ` Pieter de Bie
2009-02-16 2:43 ` Jeff King
2009-02-16 2:55 ` Brian Gernhardt
2009-02-16 9:56 ` Wincent Colaiuta
2009-02-16 7:55 ` SZEDER Gábor
2009-02-16 10:38 ` Martin Mares
2009-02-17 8:34 ` Andreas Ericsson
2009-02-17 9:06 ` Martin Mares
2009-02-17 19:28 ` Jeff King
2009-02-20 3:03 ` Eric W. Biederman
2009-02-20 3:26 ` Jeff King
2009-02-20 4:13 ` Eric W. Biederman
2009-02-17 8:30 ` Andreas Ericsson
2009-02-16 1:27 ` [RFC - draft] List of proposed future changes that are backward incompatible Sitaram Chamarty
2009-02-16 8:04 ` Björn Steinbrink
2009-02-16 8:49 ` Junio C Hamano
2009-02-16 9:07 ` Björn Steinbrink
2009-02-16 2:42 ` [RFC - draft #2] " Junio C Hamano
2009-02-16 3:20 ` Jeff King
2009-02-16 21:10 ` Jakub Narebski
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=76718490902162153m6a524b2dv335be66a0f0294ca@mail.gmail.com \
--to=jaysoffian@gmail.com \
--cc=Johannes.Schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=peff@peff.net \
--cc=sergio.callegari@gmail.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.
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).