Re: [PATCH] Documentation: Update information about <format> in git-for-each-ref
- From
Andreas Ericsson <ae@op5.se>
- Date
- Nov 1, 2006, 08:25 UTC
- Message-ID
- <45485A0F.3040807@op5.se>
- In-Reply-To
- <200610282323.57797.jnareb@gmail.com>
Jakub Narebski wrote:
Show 24 quoted lines
> Junio C Hamano wrote: >> [PATCH] for-each-ref: epoch and epochdate >> >> This adds "epoch" (which is parallel to "tagger" or "committer") >> and "epochdate" (corresponds to "taggerdate" and >> "committerdate"). >> >> As other "date" fields, "epochdate" sorts numerically >> and displays human readably > > I was thinking about having only "epochdate" (corresponding to either > "taggerdate" or "committerdate"), only named "epoch". There is I think > no need for field which would be "tagger" or "committer", and > especially not named "epoch" ;-). > > Otherwise looks fine, thanks a lot. > > > BTW. I had to translate > + if (strcmp(who, "tagger") && strcmp(who, "committer")) > to > + if (strcmp(who, "tagger") == 0 || strcmp(who, "committer") == 0) > to understand it. But this is probably my lack of contact with such > C idioms.
But this does the exact opposite. The condition will now be true if the 'who' variable holds a pointer to a string that is either "tagger" or "committer", whereas it used to be true for strings that were anything *but* any of those.
"Compare" (as in "strcmp") also translates to "are equal to" and isn't only a verb. This is unfortunate for people who aren't natively english and has had me confused on many a long night. I once ended up doing a macro called "string_matches" just to wrap my head around an insanely long conditional with too many strcmp() with about half of them negated by !.
-- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se