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

Re: Worktree shares a common remote with main checkout

From
Rubén Justo <rjusto@gmail.com>
Date
Mar 22, 2024, 17:00 UTC
Message-ID
<0ad0371c-c6ac-4ccb-b9a8-b30715f74308@gmail.com>
In-Reply-To
<CA+2m0i8E5Qnj520LXitoE49U_8V17v_NUnrqcRfzHz0cA_ONSQ@mail.gmail.com>
On Fri, Mar 22, 2024 at 10:50:30AM -0400, Bill Wallace wrote:
Show 17 quoted lines
> This issue is just to fix an easy to make mistake when working with
> multiple remote origins and worktrees, where it is too easy to push to
> the wrong remote origin because one can't set the default origin on a
> per-worktree basis.
> 
> What did you do before the bug happened? (Steps to reproduce your issue)
> Used
> * git worktree to create a worktree
> * git remote add to add a custom repository
> * git commit/push to try to push changes
> 
> What did you expect to happen? (Expected behavior)
> Expected to have the git push recommend a remote origin that matched
> the worktree, but it defaults to 'origin' all
> the time, which means I need to checkout a clean clone from the
> specific origin I'm making changes for so that I don't accidentally
> push to the default origin.
Interesting.
Can you please describe in a little more detail the new behavior?
It may be obvious, but not to me, but what should we say in these cases:
  - 'git [-C <custom_worktree>] status'
  - 'git [-C <main-worktree>] status'
  - 'git [-C <custom_worktree>] branch --list -v -v'
  - 'git [-C <main_worktree> branch] --list -v -v'
  - ...

I'm sure there are others that I'm missing. If you could explore and describe them, perhaps with sketches, it would be a great help.

Thanks.
> What happened instead? (Actual behavior)
Show 6 quoted lines
> Suggests 'origin' as the default origin - which is CORRECT for the
> main git branch, but I want to use worktrees to allow working against
> several remote origins, with the default being determined by which
> worktree I'm in.
> 
> What's different between what you expected and what actually happened?
Show 31 quoted lines
> Suggested 'origin' for the --set-default rather than allowing me to
> define the origin I want, for example 'wayfarer' as teh name of my own
> remote that I have cloned on github.  The default origin is still
> supposed to be 'origin' for pulls/naming, but when I push, it needs to
> recommend the matching origin.
> 
> Anything else you want to add:
> This is a bit of feature request, but the reason I'm listing it as a
> bug is it makes it very easy to make a mistake by pushing to the wrong
> origin for a new branch.
> 
> Please review the rest of the bug report below.
> You can delete any lines you don't wish to share.
> 
> 
> [System Info]
> git version:
> git version 2.31.1.windows.1
> cpu: x86_64
> built from commit: c5f0be26a7e3846e3b6268d1c6c4800d838c6bbb
> sizeof-long: 4
> sizeof-size_t: 8
> shell-path: /bin/sh
> feature: fsmonitor--daemon
> uname: Windows 10.0 22631
> compiler info: gnuc: 10.2
> libc info: no libc information available
> $SHELL (typically, interactive shell): <unset>
> 
> 
> [Enabled Hooks]
Previous: Bill WallaceNext: Rubén Justo
Message 2 of 8 in “Worktree shares a common remote with main checkout”
  1. Bill WallaceMar 22, 2024
  2. Rubén JustoMar 22, 2024
  3. Rubén JustoMar 22, 2024
  4. Kristoffer HaugsbakkMar 22, 2024
  5. Bill WallaceApr 3, 2024
  6. Phillip WoodApr 3, 2024
  7. Bill WallaceApr 3, 2024
  8. Bill WallaceApr 3, 2024

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.