John Keeping <john@xxxxxxxxxxxxx> writes: > If there is no upstream information for a branch, it is likely that it > is newly created and can safely be pushed under the normal fast-forward > rules. Relax the --force-with-lease check so that we do not reject > these branches immediately but rather attempt to push them as new > branches, using the null SHA-1 as the expected value. > > In fact, it is already possible to push new branches using the explicit > --force-with-lease=<branch>:<expect> syntax, so all we do here is make > this behaviour the default if no explicit "expect" value is specified. I like the loss of an extra field from "struct ref". I suspect that the if/else cascade in the loop in apply_cas() can also be taught that ':' followed by an empty string asks to check that the target ref does not exist, in order to make it a bit more useful for folks who do not rely on the "use the last observed status of the tracking branch". That would make the "explicit" test much less cumbersome to read. > +test_expect_success 'new branch covered by force-with-lease (explicit)' ' > + setup_srcdst_basic && > + ( > + cd dst && > + git branch branch master && > + git push --force-with-lease=branch:0000000000000000000000000000000000000000 origin branch > + ) && -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html