{"thread":{"id":"32530","subject":"[PATCH 01/10] t5404: do not assume the \"matching\" push is the default","startedAt":"2013-01-05T06:52:58Z","lastAt":"2013-01-08T22:28:32Z","messageCount":13,"participants":["Junio C Hamano","Matthieu Moy"],"isPatch":true,"patchVersion":1,"patchTotal":10},"messages":[{"id":"206004","messageId":"1357368788-28035-1-git-send-email-gitster@pobox.com","threadId":"32530","inReplyTo":null,"subject":"[PATCH 00/10] push: switch default from \"matching\" to \"simple\"","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-05T06:52:58Z","receivedAt":"2013-01-05T06:52:58Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"We promised to change the behaviour of lazy \"git push [there]\" that\ndoes not say what to push on the command line from \"matching\" to\n\"simple\" in Git 2.0.  Even though the top-level RelNotes symbolic\nlink points at 1.8.2, we can change our mind to tag 2.0 at the end\nof this cycle.\n\nThis carries out the threat ;-)\n\nMmany tests have assumed that the long established default will\nnever change and relied on the convenience of the \"matching\"\nbehaviour.  They need to be updated to either specify what they want\nfrom the command line explicitly, or configure the default behaviour\nthey would expect.  And then finally we can flip the default.\n\nJunio C Hamano (10):\n  t5404: do not assume the \"matching\" push is the default\n  t5505: do not assume the \"matching\" push is the default\n  t5516: do not assume the \"matching\" push is the default\n  t5517: do not assume the \"matching\" push is the default\n  t5519: do not assume the \"matching\" push is the default\n  t5531: do not assume the \"matching\" push is the default\n  t7406: do not assume the \"matching\" push is the default\n  t9400: do not assume the \"matching\" push is the default\n  t9401: do not assume the \"matching\" push is the default\n  push: switch default from \"matching\" to \"simple\"\n\n Documentation/config.txt        |  6 +++---\n builtin/push.c                  | 31 +++++++------------------------\n t/t5404-tracking-branches.sh    |  2 +-\n t/t5505-remote.sh               |  2 +-\n t/t5516-fetch-push.sh           | 10 +++++-----\n t/t5517-push-mirror.sh          |  2 +-\n t/t5519-push-alternates.sh      | 12 ++++++------\n t/t5531-deep-submodule-push.sh  |  1 +\n t/t7406-submodule-update.sh     |  4 ++--\n t/t9400-git-cvsserver-server.sh |  1 +\n t/t9401-git-cvsserver-crlf.sh   |  1 +\n 11 files changed, 29 insertions(+), 43 deletions(-)\n\n-- \n1.8.1.299.gc73b41f\n"},{"id":"206003","messageId":"1357368788-28035-2-git-send-email-gitster@pobox.com","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"[PATCH 01/10] t5404: do not assume the \"matching\" push is the default","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-05T06:52:59Z","receivedAt":"2013-01-05T06:52:59Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Signed-off-by: Junio C Hamano <gitster@pobox.com>\n---\n t/t5404-tracking-branches.sh | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)\n\ndiff --git a/t/t5404-tracking-branches.sh b/t/t5404-tracking-branches.sh\nindex c240035..2b8c0ba 100755\n--- a/t/t5404-tracking-branches.sh\n+++ b/t/t5404-tracking-branches.sh\n@@ -36,7 +36,7 @@ test_expect_success 'prepare pushable branches' '\n '\n \n test_expect_success 'mixed-success push returns error' '\n-\ttest_must_fail git push\n+\ttest_must_fail git push origin :\n '\n \n test_expect_success 'check tracking branches updated correctly after push' '\n-- \n1.8.1.299.gc73b41f\n"},{"id":"206006","messageId":"1357368788-28035-3-git-send-email-gitster@pobox.com","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"[PATCH 02/10] t5505: do not assume the \"matching\" push is the default","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-05T06:53:00Z","receivedAt":"2013-01-05T06:53:00Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Signed-off-by: Junio C Hamano <gitster@pobox.com>\n---\n t/t5505-remote.sh | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)\n\ndiff --git a/t/t5505-remote.sh b/t/t5505-remote.sh\nindex ccc55eb..6579a86 100755\n--- a/t/t5505-remote.sh\n+++ b/t/t5505-remote.sh\n@@ -345,7 +345,7 @@ test_expect_success 'fetch mirrors do not act as mirrors during push' '\n \t) &&\n \t(cd mirror-fetch/child &&\n \t git branch -m renamed renamed2 &&\n-\t git push parent\n+\t git push parent :\n \t) &&\n \t(cd mirror-fetch/parent &&\n \t git rev-parse --verify renamed &&\n-- \n1.8.1.299.gc73b41f\n"},{"id":"206008","messageId":"1357368788-28035-4-git-send-email-gitster@pobox.com","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"[PATCH 03/10] t5516: do not assume the \"matching\" push is the default","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-05T06:53:01Z","receivedAt":"2013-01-05T06:53:01Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Signed-off-by: Junio C Hamano <gitster@pobox.com>\n---\n t/t5516-fetch-push.sh | 10 +++++-----\n 1 file changed, 5 insertions(+), 5 deletions(-)\n\ndiff --git a/t/t5516-fetch-push.sh b/t/t5516-fetch-push.sh\nindex b5417cc..1a8753d 100755\n--- a/t/t5516-fetch-push.sh\n+++ b/t/t5516-fetch-push.sh\n@@ -247,7 +247,7 @@ test_expect_success 'push with pushInsteadOf and explicit pushurl (pushInsteadOf\n test_expect_success 'push with matching heads' '\n \n \tmk_test heads/master &&\n-\tgit push testrepo &&\n+\tgit push testrepo : &&\n \tcheck_push_result $the_commit heads/master\n \n '\n@@ -276,7 +276,7 @@ test_expect_success 'push --force with matching heads' '\n \tmk_test heads/master &&\n \tgit push testrepo : &&\n \tgit commit --amend -massaged &&\n-\tgit push --force testrepo &&\n+\tgit push --force testrepo : &&\n \t! check_push_result $the_commit heads/master &&\n \tgit reset --hard $the_commit\n \n@@ -507,7 +507,7 @@ test_expect_success 'push with config remote.*.pushurl' '\n \tgit checkout master &&\n \tgit config remote.there.url test2repo &&\n \tgit config remote.there.pushurl testrepo &&\n-\tgit push there &&\n+\tgit push there : &&\n \tcheck_push_result $the_commit heads/master\n '\n \n@@ -521,7 +521,7 @@ test_expect_success 'push with dry-run' '\n \t\tcd testrepo &&\n \t\told_commit=$(git show-ref -s --verify refs/heads/master)\n \t) &&\n-\tgit push --dry-run testrepo &&\n+\tgit push --dry-run testrepo : &&\n \tcheck_push_result $old_commit heads/master\n '\n \n@@ -981,7 +981,7 @@ test_expect_success 'push --porcelain --dry-run rejected' '\n \n test_expect_success 'push --prune' '\n \tmk_test heads/master heads/second heads/foo heads/bar &&\n-\tgit push --prune testrepo &&\n+\tgit push --prune testrepo : &&\n \tcheck_push_result $the_commit heads/master &&\n \tcheck_push_result $the_first_commit heads/second &&\n \t! check_push_result $the_first_commit heads/foo heads/bar\n-- \n1.8.1.299.gc73b41f\n"},{"id":"206007","messageId":"1357368788-28035-5-git-send-email-gitster@pobox.com","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"[PATCH 04/10] t5517: do not assume the \"matching\" push is the default","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-05T06:53:02Z","receivedAt":"2013-01-05T06:53:02Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Signed-off-by: Junio C Hamano <gitster@pobox.com>\n---\n t/t5517-push-mirror.sh | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)\n\ndiff --git a/t/t5517-push-mirror.sh b/t/t5517-push-mirror.sh\nindex e2ad260..12a5dfb 100755\n--- a/t/t5517-push-mirror.sh\n+++ b/t/t5517-push-mirror.sh\n@@ -256,7 +256,7 @@ test_expect_success 'remote.foo.mirror=no has no effect' '\n \t\tgit branch keep master &&\n \t\tgit push --mirror up &&\n \t\tgit branch -D keep &&\n-\t\tgit push up\n+\t\tgit push up :\n \t) &&\n \t(\n \t\tcd mirror &&\n-- \n1.8.1.299.gc73b41f\n"},{"id":"206005","messageId":"1357368788-28035-6-git-send-email-gitster@pobox.com","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"[PATCH 05/10] t5519: do not assume the \"matching\" push is the default","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-05T06:53:03Z","receivedAt":"2013-01-05T06:53:03Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Signed-off-by: Junio C Hamano <gitster@pobox.com>\n---\n t/t5519-push-alternates.sh | 12 ++++++------\n 1 file changed, 6 insertions(+), 6 deletions(-)\n\ndiff --git a/t/t5519-push-alternates.sh b/t/t5519-push-alternates.sh\nindex c00c9b0..11fcd37 100755\n--- a/t/t5519-push-alternates.sh\n+++ b/t/t5519-push-alternates.sh\n@@ -40,7 +40,7 @@ test_expect_success 'alice works and pushes' '\n \t\tcd alice-work &&\n \t\techo more >file &&\n \t\tgit commit -a -m second &&\n-\t\tgit push ../alice-pub\n+\t\tgit push ../alice-pub :\n \t)\n '\n \n@@ -57,7 +57,7 @@ test_expect_success 'bob fetches from alice, works and pushes' '\n \t\tgit pull ../alice-pub master &&\n \t\techo more bob >file &&\n \t\tgit commit -a -m third &&\n-\t\tgit push ../bob-pub\n+\t\tgit push ../bob-pub :\n \t) &&\n \n \t# Check that the second commit by Alice is not sent\n@@ -86,7 +86,7 @@ test_expect_success 'alice works and pushes again' '\n \t\tcd alice-work &&\n \t\techo more alice >file &&\n \t\tgit commit -a -m fourth &&\n-\t\tgit push ../alice-pub\n+\t\tgit push ../alice-pub :\n \t)\n '\n \n@@ -99,7 +99,7 @@ test_expect_success 'bob works and pushes' '\n \t\tcd bob-work &&\n \t\techo yet more bob >file &&\n \t\tgit commit -a -m fifth &&\n-\t\tgit push ../bob-pub\n+\t\tgit push ../bob-pub :\n \t)\n '\n \n@@ -115,7 +115,7 @@ test_expect_success 'alice works and pushes yet again' '\n \t\tgit commit -a -m sixth.2 &&\n \t\techo more and more alice >>file &&\n \t\tgit commit -a -m sixth.3 &&\n-\t\tgit push ../alice-pub\n+\t\tgit push ../alice-pub :\n \t)\n '\n \n@@ -136,7 +136,7 @@ test_expect_success 'bob works and pushes again' '\n \t\tgit hash-object -t commit -w commit &&\n \t\techo even more bob >file &&\n \t\tgit commit -a -m seventh &&\n-\t\tgit push ../bob-pub\n+\t\tgit push ../bob-pub :\n \t)\n '\n \n-- \n1.8.1.299.gc73b41f\n"},{"id":"206009","messageId":"1357368788-28035-7-git-send-email-gitster@pobox.com","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"[PATCH 06/10] t5531: do not assume the \"matching\" push is the default","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-05T06:53:04Z","receivedAt":"2013-01-05T06:53:04Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Signed-off-by: Junio C Hamano <gitster@pobox.com>\n---\n t/t5531-deep-submodule-push.sh | 1 +\n 1 file changed, 1 insertion(+)\n\ndiff --git a/t/t5531-deep-submodule-push.sh b/t/t5531-deep-submodule-push.sh\nindex 1947c28..8c16e04 100755\n--- a/t/t5531-deep-submodule-push.sh\n+++ b/t/t5531-deep-submodule-push.sh\n@@ -16,6 +16,7 @@ test_expect_success setup '\n \t\t(\n \t\t\tcd gar/bage &&\n \t\t\tgit init &&\n+\t\t\tgit config push.default matching &&\n \t\t\t>junk &&\n \t\t\tgit add junk &&\n \t\t\tgit commit -m \"Initial junk\"\n-- \n1.8.1.299.gc73b41f\n"},{"id":"206010","messageId":"1357368788-28035-8-git-send-email-gitster@pobox.com","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"[PATCH 07/10] t7406: do not assume the \"matching\" push is the default","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-05T06:53:05Z","receivedAt":"2013-01-05T06:53:05Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Signed-off-by: Junio C Hamano <gitster@pobox.com>\n---\n t/t7406-submodule-update.sh | 4 ++--\n 1 file changed, 2 insertions(+), 2 deletions(-)\n\ndiff --git a/t/t7406-submodule-update.sh b/t/t7406-submodule-update.sh\nindex feaec6c..c675ce6 100755\n--- a/t/t7406-submodule-update.sh\n+++ b/t/t7406-submodule-update.sh\n@@ -565,14 +565,14 @@ test_expect_success 'submodule add places git-dir in superprojects git-dir recur\n \t   git log > ../../../expected\n \t  ) &&\n \t  git commit -m \"added subsubmodule\" &&\n-\t  git push\n+\t  git push origin :\n \t ) &&\n \t (cd .git/modules/deeper/submodule/modules/subsubmodule &&\n \t  git log > ../../../../../actual\n \t ) &&\n \t git add deeper/submodule &&\n \t git commit -m \"update submodule\" &&\n-\t git push &&\n+\t git push origin : &&\n \t test_cmp actual expected\n \t)\n '\n-- \n1.8.1.299.gc73b41f\n"},{"id":"206013","messageId":"1357368788-28035-9-git-send-email-gitster@pobox.com","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"[PATCH 08/10] t9400: do not assume the \"matching\" push is the default","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-05T06:53:06Z","receivedAt":"2013-01-05T06:53:06Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Signed-off-by: Junio C Hamano <gitster@pobox.com>\n---\n t/t9400-git-cvsserver-server.sh | 1 +\n 1 file changed, 1 insertion(+)\n\ndiff --git a/t/t9400-git-cvsserver-server.sh b/t/t9400-git-cvsserver-server.sh\nindex 9502f24..0431386 100755\n--- a/t/t9400-git-cvsserver-server.sh\n+++ b/t/t9400-git-cvsserver-server.sh\n@@ -36,6 +36,7 @@ export CVSROOT CVS_SERVER\n \n rm -rf \"$CVSWORK\" \"$SERVERDIR\"\n test_expect_success 'setup' '\n+  git config push.default matching &&\n   echo >empty &&\n   git add empty &&\n   git commit -q -m \"First Commit\" &&\n-- \n1.8.1.299.gc73b41f\n"},{"id":"206011","messageId":"1357368788-28035-10-git-send-email-gitster@pobox.com","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"[PATCH 09/10] t9401: do not assume the \"matching\" push is the default","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-05T06:53:07Z","receivedAt":"2013-01-05T06:53:07Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Signed-off-by: Junio C Hamano <gitster@pobox.com>\n---\n t/t9401-git-cvsserver-crlf.sh | 1 +\n 1 file changed, 1 insertion(+)\n\ndiff --git a/t/t9401-git-cvsserver-crlf.sh b/t/t9401-git-cvsserver-crlf.sh\nindex 1c5bc84..8c3db76 100755\n--- a/t/t9401-git-cvsserver-crlf.sh\n+++ b/t/t9401-git-cvsserver-crlf.sh\n@@ -84,6 +84,7 @@ export CVSROOT CVS_SERVER\n \n rm -rf \"$CVSWORK\" \"$SERVERDIR\"\n test_expect_success 'setup' '\n+    git config push.default matching &&\n     echo \"Simple text file\" >textfile.c &&\n     echo \"File with embedded NUL: Q <- there\" | q_to_nul > binfile.bin &&\n     mkdir subdir &&\n-- \n1.8.1.299.gc73b41f\n"},{"id":"206012","messageId":"1357368788-28035-11-git-send-email-gitster@pobox.com","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"[PATCH 10/10] push: switch default from \"matching\" to \"simple\"","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-05T06:53:08Z","receivedAt":"2013-01-05T06:53:08Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"We promised to change the behaviour of lazy \"git push [there]\" that\ndoes not say what to push on the command line from \"matching\" to\n\"simple\" in Git 2.0.\n\nThis finally flips that bit.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>\n---\n Documentation/config.txt |  6 +++---\n builtin/push.c           | 31 +++++++------------------------\n 2 files changed, 10 insertions(+), 27 deletions(-)\n\ndiff --git a/Documentation/config.txt b/Documentation/config.txt\nindex bf8f911..770eefe 100644\n--- a/Documentation/config.txt\n+++ b/Documentation/config.txt\n@@ -1750,15 +1750,15 @@ push.default::\n   since locally stalled branches will attempt a non-fast forward push\n   if other users updated the branch.\n   +\n-  This is currently the default, but Git 2.0 will change the default\n-  to `simple`.\n+  This used to be the default, and stale web sites may still say so,\n+  but Git 2.0 has changed the default to `simple`.\n * `upstream` - push the current branch to its upstream branch.\n   With this, `git push` will update the same remote ref as the one which\n   is merged by `git pull`, making `push` and `pull` symmetrical.\n   See \"branch.<name>.merge\" for how to configure the upstream branch.\n * `simple` - like `upstream`, but refuses to push if the upstream\n   branch's name is different from the local one. This is the safest\n-  option and is well-suited for beginners. It will become the default\n+  option and is well-suited for beginners. It has become the default\n   in Git 2.0.\n * `current` - push the current branch to a branch of the same name.\n --\ndiff --git a/builtin/push.c b/builtin/push.c\nindex db9ba30..9f7c252 100644\n--- a/builtin/push.c\n+++ b/builtin/push.c\n@@ -24,7 +24,6 @@ static int progress = -1;\n static const char **refspec;\n static int refspec_nr;\n static int refspec_alloc;\n-static int default_matching_used;\n \n static void add_refspec(const char *ref)\n {\n@@ -148,9 +147,9 @@ static void setup_push_upstream(struct remote *remote, int simple)\n }\n \n static char warn_unspecified_push_default_msg[] =\n-N_(\"push.default is unset; its implicit value is changing in\\n\"\n+N_(\"push.default is unset; its implicit value has changed in\\n\"\n    \"Git 2.0 from 'matching' to 'simple'. To squelch this message\\n\"\n-   \"and maintain the current behavior after the default changes, use:\\n\"\n+   \"and maintain the traditional behavior, use:\\n\"\n    \"\\n\"\n    \"  git config --global push.default matching\\n\"\n    \"\\n\"\n@@ -175,14 +174,14 @@ static void setup_default_push_refspecs(struct remote *remote)\n {\n \tswitch (push_default) {\n \tdefault:\n-\tcase PUSH_DEFAULT_UNSPECIFIED:\n-\t\tdefault_matching_used = 1;\n-\t\twarn_unspecified_push_default_configuration();\n-\t\t/* fallthru */\n \tcase PUSH_DEFAULT_MATCHING:\n \t\tadd_refspec(\":\");\n \t\tbreak;\n \n+\tcase PUSH_DEFAULT_UNSPECIFIED:\n+\t\twarn_unspecified_push_default_configuration();\n+\t\t/* fallthru */\n+\n \tcase PUSH_DEFAULT_SIMPLE:\n \t\tsetup_push_upstream(remote, 1);\n \t\tbreak;\n@@ -208,12 +207,6 @@ static const char message_advice_pull_before_push[] =\n \t   \"before pushing again.\\n\"\n \t   \"See the 'Note about fast-forwards' in 'git push --help' for details.\");\n \n-static const char message_advice_use_upstream[] =\n-\tN_(\"Updates were rejected because a pushed branch tip is behind its remote\\n\"\n-\t   \"counterpart. If you did not intend to push that branch, you may want to\\n\"\n-\t   \"specify branches to push or set the 'push.default' configuration variable\\n\"\n-\t   \"to 'simple', 'current' or 'upstream' to push only the current branch.\");\n-\n static const char message_advice_checkout_pull_push[] =\n \tN_(\"Updates were rejected because a pushed branch tip is behind its remote\\n\"\n \t   \"counterpart. Check out this branch and merge the remote changes\\n\"\n@@ -227,13 +220,6 @@ static void advise_pull_before_push(void)\n \tadvise(_(message_advice_pull_before_push));\n }\n \n-static void advise_use_upstream(void)\n-{\n-\tif (!advice_push_non_ff_default || !advice_push_nonfastforward)\n-\t\treturn;\n-\tadvise(_(message_advice_use_upstream));\n-}\n-\n static void advise_checkout_pull_push(void)\n {\n \tif (!advice_push_non_ff_matching || !advice_push_nonfastforward)\n@@ -272,10 +258,7 @@ static int push_with_options(struct transport *transport, int flags)\n \t\tadvise_pull_before_push();\n \t\tbreak;\n \tcase NON_FF_OTHER:\n-\t\tif (default_matching_used)\n-\t\t\tadvise_use_upstream();\n-\t\telse\n-\t\t\tadvise_checkout_pull_push();\n+\t\tadvise_checkout_pull_push();\n \t\tbreak;\n \t}\n \n-- \n1.8.1.299.gc73b41f\n"},{"id":"206040","messageId":"vpqpq1ja06s.fsf@grenoble-inp.fr","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"Re: [PATCH 00/10] push: switch default from \"matching\" to \"simple\"","fromName":"Matthieu Moy","fromEmail":"matthieu.moy@grenoble-inp.fr","sentAt":"2013-01-05T19:39:55Z","receivedAt":"2013-01-05T19:39:55Z","isPatch":true,"sender":{"key":"matthieu.moy@grenoble-inp.fr","avatar":"https://gravatar.com/avatar/72c8a2705971a25dfaff23cece15130d405685845d911aedd5667ace277f3fc5?d=mp&s=160"},"body":"Junio C Hamano <gitster@pobox.com> writes:\n\n> We promised to change the behaviour of lazy \"git push [there]\" that\n> does not say what to push on the command line from \"matching\" to\n> \"simple\" in Git 2.0.  Even though the top-level RelNotes symbolic\n> link points at 1.8.2, we can change our mind to tag 2.0 at the end\n> of this cycle.\n\nI had a quick look at the series, it sounds straightforward and correct.\nThanks,\n\n-- \nMatthieu Moy\nhttp://www-verimag.imag.fr/~moy/\n"},{"id":"206336","messageId":"7v1udvcnsf.fsf@alter.siamese.dyndns.org","threadId":"32530","inReplyTo":"1357368788-28035-1-git-send-email-gitster@pobox.com","subject":"[PATCH 11/10] doc: push.default is no longer \"matching\"","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-01-08T22:28:32Z","receivedAt":"2013-01-08T22:28:32Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"The documentation for the command said that `push.default` is the\ndefault without referring to the releavant manual page.\n\nNow `simple` is the default behaviour. Document it right there where\nwe say we take the default value from `push.default`, and remove the\ndescription of old default being 'matching'.\n\nAlso reword cryptic desription of `--all`.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>\n---\n\n * I skimmed our two tutorials, just to be sure, but they do not\n   discuss 'git push', so there was nothing to update there.\n\n   I *think* we are minimally ready to switch the default behaviour\n   now, but there may be other places that need similar adjustment.\n   An independent audit is highly appreciated.\n\n Documentation/git-push.txt | 19 ++++++++++---------\n 1 file changed, 10 insertions(+), 9 deletions(-)\n\ndiff --git a/Documentation/git-push.txt b/Documentation/git-push.txt\nindex 8b637d3..f326afb 100644\n--- a/Documentation/git-push.txt\n+++ b/Documentation/git-push.txt\n@@ -36,10 +36,14 @@ OPTIONS[[OPTIONS]]\n \tThe format of a <refspec> parameter is an optional plus\n \t`+`, followed by the source ref <src>, followed\n \tby a colon `:`, followed by the destination ref <dst>.\n-\tIt is used to specify with what <src> object the <dst> ref\n-\tin the remote repository is to be updated.  If not specified,\n+\tIt is used to specify what <src> object the <dst> ref\n+\tin the remote repository is to be updated to.  If no\n+\t<refspec> is specified on the command line, and if no\n+\t<refspec> is configured for the <repository>,\n \tthe behavior of the command is controlled by the `push.default`\n-\tconfiguration variable.\n+\tconfiguration variable, and if it is unset, the `simple`\n+\tbehaviour is used (see lingit:git-config[1] and look\n+\tfor `push.default`).\n +\n The <src> is often the name of the branch you would want to push, but\n it can be any arbitrary \"SHA-1 expression\", such as `master~4` or\n@@ -65,14 +69,11 @@ the remote repository.\n The special refspec `:` (or `+:` to allow non-fast-forward updates)\n directs git to push \"matching\" branches: for every branch that exists on\n the local side, the remote side is updated if a branch of the same name\n-already exists on the remote side.  This is the default operation mode\n-if no explicit refspec is found (that is neither on the command line\n-nor in any Push line of the corresponding remotes file---see below) and\n-no `push.default` configuration variable is set.\n+already exists on the remote side.\n \n --all::\n-\tInstead of naming each ref to push, specifies that all\n-\trefs under `refs/heads/` be pushed.\n+\tPush all branches (i.e. refs under `refs/heads/`); cannot be\n+\tused with other <refspec>.\n \n --prune::\n \tRemove remote branches that don't have a local counterpart. For example\n-- \n1.8.1.317.ga1ba510\n"}]}