Hi Junio,

On 2015-06-19 21:28, Junio C Hamano wrote:
> Johannes Schindelin <johannes.schinde...@gmx.de> writes:
> 
>> Some legacy code has objects with non-fatal fsck issues; To enable the
>> user to ignore those issues, let's print out the ID (e.g. when
>> encountering "missingemail", the user might want to call `git config
>> --add receive.fsck.missingemail=warn`).
>>
>> Signed-off-by: Johannes Schindelin <johannes.schinde...@gmx.de>
>> ---
>>  fsck.c          | 16 ++++++++++++++++
>>  t/t1450-fsck.sh |  4 ++--
>>  2 files changed, 18 insertions(+), 2 deletions(-)
>>
>> diff --git a/fsck.c b/fsck.c
>> index 8e6faa8..0b3e18f 100644
>> --- a/fsck.c
>> +++ b/fsck.c
>> @@ -190,6 +190,20 @@ void fsck_set_msg_types(struct fsck_options *options, 
>> const char *values)
>>      }
>>  }
>>
>> +static void append_msg_id(struct strbuf *sb, const char *msg_id)
>> +{
>> +    for (;;) {
>> +            char c = *(msg_id)++;
>> +
>> +            if (!c)
>> +                    break;
>> +            if (c != '_')
>> +                    strbuf_addch(sb, tolower(c));
>> +    }
>> +
>> +    strbuf_addstr(sb, ": ");
>> +}
>> +
>>  __attribute__((format (printf, 4, 5)))
>>  static int report(struct fsck_options *options, struct object *object,
>>      enum fsck_msg_id id, const char *fmt, ...)
>> @@ -198,6 +212,8 @@ static int report(struct fsck_options *options, struct 
>> object *object,
>>      struct strbuf sb = STRBUF_INIT;
>>      int msg_type = fsck_msg_type(id, options), result;
>>
>> +    append_msg_id(&sb, msg_id_info[id].id_string);
> 
> 
> Nice.  The append function can be made a bit more context sensitive
> to upcase a char immediately after _ to make it easier to cut and
> paste into "git config" and keep the result readable, I think.
> 
>       git config --add receive.fsck.missingEmail=warn

Okay. I camelCased the IDs; it is a bit sore on my eyes in the command-line 
output, and the config variables are case-insensitive, anyway, but your wish is 
my command... I changed it locally, it will be part of v7.

Ciao,
Dscho
--
To unsubscribe from this list: send the line "unsubscribe git" in

Reply via email to