Jacob Keller <jacob.e.keller@xxxxxxxxx> writes: > ... Suppose that you version all > your official releases such as "v1.2", "v1.3", "v1.4", "v2.1" and so on. > Now, you also have other tags which represent -rc releases and other > such tags. If you want to find the first major release that contains > a given commit you might try > > git describe --contains --match="v?.?" <commit> > > This will work as long as you have only single digits. But if you start > adding multiple digits, the pattern becomes not enough to match all the > tags you wanted while excluding the ones you didn't. Isn't what you really want for the use case a negative pattern, i.e. "I want ones that match v* but not the ones that match *-rc*", though?