Subject: Re: [PATCH v3] push: Enhance unspecified push default warning

From: Junio C Hamano <[email-masked]>
Date: Mon, 04 Nov 2013 10:32:16 -0800

Greg Jacobson <[email-masked]> writes:

> Is there anything I could do to improve this patch?  Thank you.

My vague recollection is that we started from an excerpt from the
documentation page, not unlike this patch attempts to, but because
such an excerpt has to be less complete than the documentation for
brevity's sake, it is bound to be an incorrect and/or misleading
one, and decided that we are better off referring the users, who do
want to choose something other than the default we chose, to the
documentation.

Somebody cares to dig up the old discussion threads and post a few
pointers?

> On Fri, Oct 4, 2013 at 10:20 AM, Greg Jacobson <[email-masked]> wrote:
>> When the unset push.default warning message is displayed
>> this may be the first time many users encounter push.default.
>> Modified the warning message to explain in a compact
>> manner what push.default is and why it is being changed in
>> Git 2.0.  Also provided additional information to help users
>> decide if this change will affect their workflow.
>>
>> Signed-off-by: Greg Jacobson <[email-masked]>
>> ---
>>  builtin/push.c | 9 +++++++++
>>  1 file changed, 9 insertions(+)
>>
>> diff --git a/builtin/push.c b/builtin/push.c
>> index 7b1b66c..5393e28 100644
>> --- a/builtin/push.c
>> +++ b/builtin/push.c
>> @@ -174,6 +174,15 @@ N_("push.default is unset; its implicit value is
>> changing in\n"
>>     "\n"
>>     "  git config --global push.default simple\n"
>>     "\n"
>> +   "When push.default is set to 'matching', git will push all local branches\n"
>> +   "to the remote branches with the same (matching) name.  This will no\n"
>> +   "longer be the default in Git 2.0 because a branch could be\n"
>> +   "unintentionally pushed to a remote.\n"
>> +   "\n"
>> +   "In Git 2.0 the new push.default of 'simple' will push only the current\n"
>> +   "branch to the same remote branch used by git pull.   A push will\n"
>> +   "only succeed if the remote and local branches have the same name.\n"
>> +   "\n"
>>     "See 'git help config' and search for 'push.default' for further
>> information.\n"
>>     "(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode\n"
>>     "'current' instead of 'simple' if you sometimes use older versions
>> of Git)");
>> --
>> 1.8.4.474.g128a96c.dirty