Re: [PATCH(TIC)] push: annoy all users by deprecating the default semantics

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Feb 19, 2008 at 04:14:35PM +0000, Johannes Schindelin wrote:

> Subject: [PATCH(TIC)] push: annoy all users by deprecating the default

Heh. It is a good sign that git has made the patch-generation workflow
so pleasant to use that we are willing to make patches for the sake of
humor. :)

> 	FWIW I would resist, just because that config option would change 
> 	the _semantics_ of a git program.
> 
> 	Just think about the IRC channel.  "How do I update only HEAD?" --
> 	"Just say 'git push'" -- "No, that updates nothing" -- "Well, 
> 	works here" -- "But not here!" ... "Can _nobody_ help me?"

Just say "git push origin HEAD"?

> diff --git a/builtin-push.c b/builtin-push.c
> index c8cb63e..7bcb141 100644
> --- a/builtin-push.c
> +++ b/builtin-push.c
> @@ -134,6 +134,14 @@ int cmd_push(int argc, const char **argv, const char *prefix)
>  		flags |= TRANSPORT_PUSH_ALL;
>  	if (mirror)
>  		flags |= (TRANSPORT_PUSH_MIRROR|TRANSPORT_PUSH_FORCE);
> +	if (!all && argc < 2)
> +		warning("Pushing without branch names is deprecated.\n"
> +			"Too many users just assumed what it should do\n"
> +			"according to them, got burned, and blamed us,\n"
> +			"the good git developers.\n\n"
> +			"So everybody has to suffer now, and get used to\n"
> +			"new semantics.\n\n"
> +			"Thank you for your time.\n");
>  
>  	if (argc > 0) {
>  		repo = argv[0];

You forgot to add a "--matching" option in case people want to
explicitly request the old behavior. ;P

Seriously, though, I think it is not just new users. It is that for some
(many? most?) people, wanting to push just the HEAD is the _normal_
workflow. So they must remember to always say "git push origin HEAD",
and if they ever forget, the side effects are non-trivial to clean up.

-Peff
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux