{"thread":{"id":"55634","subject":"[PATCH] doc: attempt to clarify a blurry sentence.","startedAt":"2021-05-06T16:37:08Z","lastAt":"2021-05-07T08:51:47Z","messageCount":3,"participants":["Lars Berntzon via GitGitGadget","Junio C Hamano","Lars Berntzon"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"423798","messageId":"pull.1019.git.git.1620319023972.gitgitgadget@gmail.com","threadId":"55634","inReplyTo":null,"subject":"[PATCH] doc: attempt to clarify a blurry sentence.","fromName":"Lars Berntzon via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2021-05-06T16:37:03Z","receivedAt":"2021-05-06T16:37:08Z","isPatch":true,"sender":{"key":"lars.berntzon@cecilia-data.se","avatar":null},"body":"From: Lars Berntzon <lars.berntzon@external.atlascopco.com>\n\nSigned-off-by: Lars Berntzon <lars.berntzon@cecilia-data.se>\n---\n    Attempt to clarify a blurry sentence.\n    \n    Signed-off-by: Lars Berntzon lars.berntzon@cecilia-data.se\n\nPublished-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1019%2Flboclboc%2Fmaster-v1\nFetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1019/lboclboc/master-v1\nPull-Request: https://github.com/git/git/pull/1019\n\n Documentation/git-push.txt | 8 ++++----\n 1 file changed, 4 insertions(+), 4 deletions(-)\n\ndiff --git a/Documentation/git-push.txt b/Documentation/git-push.txt\nindex a953c7c38790..bbb30c52395e 100644\n--- a/Documentation/git-push.txt\n+++ b/Documentation/git-push.txt\n@@ -66,10 +66,10 @@ it can be any arbitrary \"SHA-1 expression\", such as `master~4` or\n The <dst> tells which ref on the remote side is updated with this\n push. Arbitrary expressions cannot be used here, an actual ref must\n be named.\n-If `git push [<repository>]` without any `<refspec>` argument is set to\n-update some ref at the destination with `<src>` with\n-`remote.<repository>.push` configuration variable, `:<dst>` part can\n-be omitted--such a push will update a ref that `<src>` normally updates\n+If `git push [<repository>]` without any `<refspec>` argument then\n+git will update the remote ref as defined by `remote.<repository>.push` configuration\n+and it will be updated from HEAD.\n+`:<dst>` part can be omitted--such a push will update a ref that `<src>` normally updates\n without any `<refspec>` on the command line.  Otherwise, missing\n `:<dst>` means to update the same ref as the `<src>`.\n +\n\nbase-commit: 7e391989789db82983665667013a46eabc6fc570\n-- \ngitgitgadget\n"},{"id":"423827","messageId":"xmqqzgx7wmd3.fsf@gitster.g","threadId":"55634","inReplyTo":"pull.1019.git.git.1620319023972.gitgitgadget@gmail.com","subject":"Re: [PATCH] doc: attempt to clarify a blurry sentence.","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2021-05-06T22:03:52Z","receivedAt":"2021-05-06T22:04:00Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Lars Berntzon via GitGitGadget\" <gitgitgadget@gmail.com> writes:\n\n> diff --git a/Documentation/git-push.txt b/Documentation/git-push.txt\n> index a953c7c38790..bbb30c52395e 100644\n> --- a/Documentation/git-push.txt\n> +++ b/Documentation/git-push.txt\n> @@ -66,10 +66,10 @@ it can be any arbitrary \"SHA-1 expression\", such as `master~4` or\n>  The <dst> tells which ref on the remote side is updated with this\n>  push. Arbitrary expressions cannot be used here, an actual ref must\n>  be named.\n> -If `git push [<repository>]` without any `<refspec>` argument is set to\n> -update some ref at the destination with `<src>` with\n> -`remote.<repository>.push` configuration variable, `:<dst>` part can\n> -be omitted--such a push will update a ref that `<src>` normally updates\n> +If `git push [<repository>]` without any `<refspec>` argument then\n> +git will update the remote ref as defined by `remote.<repository>.push` configuration\n> +and it will be updated from HEAD.\n> +`:<dst>` part can be omitted--such a push will update a ref that `<src>` normally updates\n\nHmph, \"If X then Git will do Y\" expects X to be a full sentence with\nsubject and verb, but I do not see any verb in \n\n    `git push [<repository>]` without any `<refspec>` argument\n\nin the rewritten version.\n\nMore importantly, the updated description is wrong.  The original\nmay be hard to follow, but what it is trying to explain is the\nfollowing.\n\nImagine that you have configured\n\n\t[remote \"origin\"]\n\t\tpush = refs/heads/*:refs/remotes/satellite/*\n\nImagine further that you have a local branch 'next' and you want to\npush it out to the \"origin\".  You also have other local branches\nlike 'master' and 'maint', but you do not wish to push them out\nright now.\n\nUnder such a scenario, if you were to type\n\n    $ git push origin\n\n(i.e. \"`git push [<repository>]` without `<refspec>` argument\"),\nsuch a command is set to update `refs/remotes/satellite/next`\n(i.e. \"some ref\") at the \"origin\" (i.e. \"the destination\") with\n`next` (i.e. \"with <src>\") via the remote.origin.push configuration\nvariable.  So this scenario satisfies the precondition of the\ndescription we are discussing.\n\nIn such a case, you do not have to fully spell out\n\n    $ git push origin next:refs/remotes/satellite/next\n\nin order to push your 'next' branch (which may not be the current\nbranch) from the command line to its usual/configured destination.\n\nInstead, you can omit \":<dst>\", i.e.\n\n    $ git push origin next\n\nand such a push will update the remote ref that would be normally\nupdated by the local ref named on the command line, i.e. the remote\n'refs/remotes/satellite/next' will be updated with your local\n'refs/heads/next'.  But your 'master' and 'maint' will not be pushed\nto their usual/configured destinations with such a push.\n\nAgain, the original may hard to read and it can use some rewriting\nto make it easier to read.  Thanks for trying to help by attempting,\nand another try with the above information in mind is greatly\nappreciated.\n\n"},{"id":"423866","messageId":"38c762aa-07b3-99c6-9fa7-8cbd667839bc@cecilia-data.se","threadId":"55634","inReplyTo":"pull.1019.git.git.1620319023972.gitgitgadget@gmail.com","subject":"Re: [PATCH] doc: attempt to clarify a blurry sentence.","fromName":"Lars Berntzon","fromEmail":"lars.berntzon@cecilia-data.se","sentAt":"2021-05-07T08:35:39Z","receivedAt":"2021-05-07T08:51:47Z","isPatch":true,"sender":{"key":"lars.berntzon@cecilia-data.se","avatar":null},"body":"Yes, your text is clear. I realize now I miss-read the line as if it was:\n\n   If git push [<repository>] without any <refspec> argument is set, to \n-update some ref at the destination with <src> with....\n\nI mentally placed the comma there and then I could not get pass that \n(and for me there was no verb there to start with so I though it was the \ngit-doc lingua).\n\nBut the main problem I have I guess is that the line refers to and , but \nthose comes from the ref-spec, but the whole line is about when ref-spec \nis not specified so the placeholders and are not valid. Also your \nclarification contain <src> and <dst> but again without ref-spec that is \nnot defined.\n\nRegards, Lars\n\nOn 2021-05-06 18:37, Lars Berntzon via GitGitGadget wrote:\n> From: Lars Berntzon <lars.berntzon@external.atlascopco.com>\n>\n> Signed-off-by: Lars Berntzon <lars.berntzon@cecilia-data.se>\n> ---\n>      Attempt to clarify a blurry sentence.\n>      \n>      Signed-off-by: Lars Berntzon lars.berntzon@cecilia-data.se\n>\n> Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1019%2Flboclboc%2Fmaster-v1\n> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1019/lboclboc/master-v1\n> Pull-Request: https://github.com/git/git/pull/1019\n>\n>   Documentation/git-push.txt | 8 ++++----\n>   1 file changed, 4 insertions(+), 4 deletions(-)\n>\n> diff --git a/Documentation/git-push.txt b/Documentation/git-push.txt\n> index a953c7c38790..bbb30c52395e 100644\n> --- a/Documentation/git-push.txt\n> +++ b/Documentation/git-push.txt\n> @@ -66,10 +66,10 @@ it can be any arbitrary \"SHA-1 expression\", such as `master~4` or\n>   The <dst> tells which ref on the remote side is updated with this\n>   push. Arbitrary expressions cannot be used here, an actual ref must\n>   be named.\n> -If `git push [<repository>]` without any `<refspec>` argument is set to\n> -update some ref at the destination with `<src>` with\n> -`remote.<repository>.push` configuration variable, `:<dst>` part can\n> -be omitted--such a push will update a ref that `<src>` normally updates\n> +If `git push [<repository>]` without any `<refspec>` argument then\n> +git will update the remote ref as defined by `remote.<repository>.push` configuration\n> +and it will be updated from HEAD.\n> +`:<dst>` part can be omitted--such a push will update a ref that `<src>` normally updates\n>   without any `<refspec>` on the command line.  Otherwise, missing\n>   `:<dst>` means to update the same ref as the `<src>`.\n>   +\n>\n> base-commit: 7e391989789db82983665667013a46eabc6fc570\n"}]}