Re: [PATCH 2/2] format-patch: introduce format.defaultTo
- From
Ramkumar Ramachandra <artagnon@gmail.com>
- Date
- Jan 6, 2014, 22:10 UTC
- Message-ID
- <CALkWK0k21W4gz9Rm8CyLMwjXq2A9wvm=XCVDsqs06oeW3VUg6w@mail.gmail.com>
- In-Reply-To
- <20140106201854.GA28162@sigill.intra.peff.net>
Jeff King wrote:
> Yeah, I had similar thoughts. I personally use "branch.*.merge" as > "forkedFrom", and it seems like we are going that way anyway with things > like "git rebase" and "git merge" defaulting to upstream.
My issue with that is that I no idea where my branch is with respect to my forked upstream; I find that extremely useful when doing re-spins.
> But then there > is "git push -u" and "push.default = upstream", which treats the > upstream config as something else entirely.
push.default = upstream is a bit of a disaster, in my opinion. I've advocated push.default = current on multiple occasions, and wrote the initial remote.pushDefault series with that configuration in mind.
Show 6 quoted lines
> I wonder if it is too late to try to clarify this dual usage. It kind of > seems like the push config is "this is the place I publish to". Which, > in many workflows, just so happens to be the exact same as the place you > forked from. Could we introduce a new branch.*.pushupstream variable > that falls back to branch.*.merge? Or is that just throwing more fuel on > the fire (more sand in the pit in my analogy, I guess).
We already have a branch.*.pushremote, and I don't see the value of branch.*.pushbranch (what you're referring to as pushupstream, I assume) except for Gerrit users. Frankly, I don't use full triangular workflows myself mainly because my prompt is compromised: when I have a branch.*.remote different from branch.*.pushremote, I'd like to see where my branch is with respect to @{u} and @{publish} (not yet invented); that's probably too much information to digest anyway, so I use central workflow (pointing to my fork) for each of my branches, except master (which points to Junio's repo).
> I admit I haven't thought it through yet, though. And even if it does > work, it may throw a slight monkey wrench in the proposed push.default > transition.
We're transitioning to push.default = simple which is even simpler than current.