Re: `git fetch --refmap=<refspec>… <repository> <refspec>… ` providing NON-empty <refspec> to the --refmap ALSO causes Git to ignore the configured refspecs
- From
Johannes Sixt <j6t@kdbg.org>
- Date
- Sep 4, 2024, 06:15 UTC
- Message-ID
- <a33a73f7-e6dd-4f97-a635-c6c5dfcadeb1@kdbg.org>
- In-Reply-To
- <CANrWfmSe0ekbRR9VsX8jALWQQVdhDv-2WTSm47jHTiV9-Z7-pg@mail.gmail.com>
Am 04.09.24 um 06:09 schrieb Han Jiang:
Show 6 quoted lines
> What did you expect to happen? (Expected behavior) > > In `git fetch --refmap='+refs/heads/branch1:refs/remotes/server/branch1' > server branch1 branch2`, > `remote.server.fetch=+refs/heads/*:refs/remotes/server/*` merges with > `--refmap='+refs/heads/branch1:refs/remotes/server/branch1'`,
The way I read the documentation of --refmap, I cannot infer any sort of merging of refspec, only that a replacement occurs.
Show 12 quoted lines
> so these should be what would be done: > branch1 -> server/branch1 > branch2 -> server/branch2 > > What happened instead? (Actual behavior) > > In `git fetch --refmap='+refs/heads/branch1:refs/remotes/server/branch1' > server branch1 branch2`, > `remote.server.fetch=+refs/heads/*:refs/remotes/server/*` is replaced > by `--refmap='+refs/heads/branch1:refs/remotes/server/branch1'`, > so these are what would be done: > branch1 -> server/branch1
So, this seems the correct output, because it is no longer specified how branch2 should be stored locally.
-- Hannes