git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 6/6] remote.c: introduce branch.<name>.pushremote

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 22, 2013, 17:37 UTC
Message-ID
<7vppyr72tx.fsf@alter.siamese.dyndns.org>
In-Reply-To
<1363938756-13722-7-git-send-email-artagnon@gmail.com>
Ramkumar Ramachandra <artagnon@gmail.com> writes:
Show 28 quoted lines
> This new configuration variable overrides `remote.pushdefault` and
> `branch.<name>.remote` for pushes.  In a typical triangular-workflow
> setup, you would want to set `remote.pushdefault` to specify the
> remote to push to for all branches, and use this option to override it
> for a specific branch.
>
> Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
> ---
>  Documentation/config.txt | 18 ++++++++++++++----
>  remote.c                 |  4 ++++
>  t/t5516-fetch-push.sh    | 15 +++++++++++++++
>  3 files changed, 33 insertions(+), 4 deletions(-)
>
> diff --git a/Documentation/config.txt b/Documentation/config.txt
> index 09a8294..6595cd6 100644
> --- a/Documentation/config.txt
> +++ b/Documentation/config.txt
> @@ -726,9 +726,18 @@ branch.<name>.remote::
>  	When on branch <name>, it tells 'git fetch' and 'git push'
>  	which remote to fetch from/push to.  The remote to push to
>  	may be overridden with `remote.pushdefault` (for all branches).
> -	If no remote is configured, or if you are not on any branch,
> -	it defaults to `origin` for fetching and `remote.pushdefault`
> -	for pushing.
> +	The remote to push to, for the current branch, may be further
> +	overridden by `branch.<name>.pushremote`.  If no remote is
> +	configured, or if you are not on any branch, it defaults to
> +	`origin` for fetching and `remote.pushdefault` for pushing.

Nice write-up. It may be easier to read if the new text is in a separate paragraph, though.

> +branch.<name>.pushremote::
> +	When on branch <name>, it overrides `branch.<name>.remote`
> +	when pushing.  It also overrides `remote.pushdefault` when
> +	pushing from branch <name>.

Perhaps s/when pushing/for pushing/; Or "Specify what remote to push to when on branch <name>, overriding `branch.<name>.remote` and `remote.pushdefault`."

> +	In a typical triangular-workflow
> +	setup,...

Is there an "atypical triangular-workflow"? Drop "typical" and explain what you mean by triangular, perhaps like

	When you pull from one place (e.g. your upstream) and push
	to another place (e.g. your own publishing repository),

Then the rest of the text flows more naturally without ever introducing a new lingo "triangular" that is not in glossary.

> +	... you would want to set `remote.pushdefault` to specify
> +	the remote to push to for all branches, and use this option to
> +	override it for a specific branch.
Previous: Ramkumar Ramachandra
Message 24 of 24 in “Support triangular workflows”
  1. 0/6 Support triangular workflowsRamkumar Ramachandra, Mar 22, 2013
  2. 1/6 remote.c: simplify a bit of code using git_config_string()Ramkumar Ramachandra, Mar 22, 2013
  3. Jonathan NiederMar 22, 2013
  4. 2/6 t5516 (fetch-push): update test descriptionRamkumar Ramachandra, Mar 22, 2013
  5. Jonathan NiederMar 22, 2013
  6. 3/6 t5516 (fetch-push): introduce mk_test_with_name()Ramkumar Ramachandra, Mar 22, 2013
  7. Jeff KingMar 22, 2013
  8. Junio C HamanoMar 22, 2013
  9. Jeff KingMar 22, 2013
  10. Jonathan NiederMar 22, 2013
  11. Ramkumar RamachandraMar 28, 2013
  12. Junio C HamanoMar 22, 2013
  13. Jeff KingMar 22, 2013
  14. 4/6 remote.c: introduce a way to have different remotes for fetch/pushRamkumar Ramachandra, Mar 22, 2013
  15. Jonathan NiederMar 22, 2013
  16. Junio C HamanoMar 22, 2013
  17. Jonathan NiederMar 22, 2013
  18. Ramkumar RamachandraMar 23, 2013
  19. Ramkumar RamachandraMar 23, 2013
  20. 5/6 remote.c: introduce remote.pushdefaultRamkumar Ramachandra, Mar 22, 2013
  21. Jeff KingMar 22, 2013
  22. Ramkumar RamachandraMar 27, 2013
  23. 6/6 remote.c: introduce branch.<name>.pushremoteRamkumar Ramachandra, Mar 22, 2013
  24. Junio C HamanoMar 22, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.