Christian Couder <christian.couder@xxxxxxxxx> writes: > On Thu, Feb 1, 2024 at 10:27 PM Junio C Hamano <gitster@xxxxxxxxx> wrote: >> >> Christian Couder <christian.couder@xxxxxxxxx> writes: >> >> > When such a command is used to find the dependencies of some objects, >> > for example the dependencies of quarantined objects, it would be >> > better if the command would instead consider such missing objects, >> > especially commits, in the same way as other missing objects. >> > >> > If, for example `--missing=print` is used, it would be nice for some >> > use cases if the missing tips passed as arguments were reported in >> > the same way as other missing objects instead of the command just >> > failing. >> > >> > Let's introduce a new `--allow-missing-tips` option to make it work >> > like this. >> >> An obvious question is if this even needs to be a new option. What >> are expected use cases where --missing=print without this option is >> beneficial? > > I am not sure if such a case is really beneficial but some > people/script/forges might rely on an error from `git rev-list > --missing=print` to propagate back an error to some user interface. I currently learn toward just making the new flag's behavior be absorved into the existing "--missing=..." flag. Nevertheless, you raise an interesting concern. Perhaps a compromise would be to make "--missing=..." learn the new behavior of this patch as Junio suggested, but to introduce a new flag, something like "--fail-on-missing-tips" to fail early if any of the tip commits' objects are missing? That way we could keep the current "strict" behavior of complaining if we feed rev-list any tips whose objects are missing. And for the vast majority of cases the "--missing=..." flag could (intuitively) gracefully handle tips with missing objects and you wouldn't have to pass in the additional flag. IOW, make the minority (certainly not majority, I think?) of users who really need the error propagation use the (new) extra flag, while the rest of us (including the version of you who was surprised by the limited behavior of "--missing=...", enough to write this series) don't have to. Thanks.