From: Junio C Hamano Date: Wed, 01 Apr 2026 16:56:43 GMT Subject: Re: [RFC PATCH v3 2/2] push: support pushing to a remote group Message-ID: In-Reply-To: Usman Akinyemi writes: >> >> I would personally have designed to mimic exactly like "git push r1; >> git push r2; ..." would do (not concatenated with "&&" but with >> ";"), which would mean that there is only one single failure mode >> that would not affect interactions with any other remotes, but I >> have no strong arguments to choose that design, other than that it >> would be easy to explain when we later start supporting pushes to >> multiple remotes in parallel, where a failure to talk to one remote >> cannot easily affect interaction with other remotes without getting >> affected by timing issues. > If we want to have one failure mode i.e continue pushing when there is > a failure, > then, we have to use `run_command` to spawn a child process for each > of the push. Because you would want to avoid hitting a "die()" while pushing to the (N-1)th remote, before you push to the Nth remote? If there is a "now we have attempted to push to all N remotes, and know the outcome from these N attempts, summarize them and present the result" phase in the program, then you'd need to spawn sub push for N times and then the primary process needs to do the summarizing. If there isn't any such "post push clean-up" phase, we need N-1 sub pushes and the last one can be done in the primary process. If that is possible, that would be ideal, because it makes N==1 case the same as the traditional "push to a single remote" case.