replace info: rename 'full' to 'long' and clarify in-code symbols
Enum names SHORT/MEDIUM/FULL were too broad to be descriptive. And they clashed with built-in symbols on platforms like Windows. Clarify by giving them REPLACE_FORMAT_ prefix. Rename 'full' format in "git replace --format=<name>" to 'long', to match others (i.e. 'short' and 'medium'). Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
34a332221c
commit
663a8566be
@ -72,7 +72,7 @@ OPTIONS
|
||||
|
||||
--format=<format>::
|
||||
When listing, use the specified <format>, which can be one of
|
||||
'short', 'medium' and 'full'. When omitted, the format
|
||||
'short', 'medium' and 'long'. When omitted, the format
|
||||
defaults to 'short'.
|
||||
|
||||
FORMATS
|
||||
@ -84,7 +84,7 @@ The following format are available:
|
||||
<replaced sha1>
|
||||
* 'medium':
|
||||
<replaced sha1> -> <replacement sha1>
|
||||
* 'full'
|
||||
* 'long':
|
||||
<replaced sha1> (<replaced type>) -> <replacement sha1> (<replacement type>)
|
||||
|
||||
CREATING REPLACEMENT OBJECTS
|
||||
|
@ -20,11 +20,15 @@ static const char * const git_replace_usage[] = {
|
||||
NULL
|
||||
};
|
||||
|
||||
enum repl_fmt { SHORT, MEDIUM, FULL };
|
||||
enum replace_format {
|
||||
REPLACE_FORMAT_SHORT,
|
||||
REPLACE_FORMAT_MEDIUM,
|
||||
REPLACE_FORMAT_LONG
|
||||
};
|
||||
|
||||
struct show_data {
|
||||
const char *pattern;
|
||||
enum repl_fmt fmt;
|
||||
enum replace_format format;
|
||||
};
|
||||
|
||||
static int show_reference(const char *refname, const unsigned char *sha1,
|
||||
@ -33,11 +37,11 @@ static int show_reference(const char *refname, const unsigned char *sha1,
|
||||
struct show_data *data = cb_data;
|
||||
|
||||
if (!fnmatch(data->pattern, refname, 0)) {
|
||||
if (data->fmt == SHORT)
|
||||
if (data->format == REPLACE_FORMAT_SHORT)
|
||||
printf("%s\n", refname);
|
||||
else if (data->fmt == MEDIUM)
|
||||
else if (data->format == REPLACE_FORMAT_MEDIUM)
|
||||
printf("%s -> %s\n", refname, sha1_to_hex(sha1));
|
||||
else { /* data->fmt == FULL */
|
||||
else { /* data->format == REPLACE_FORMAT_LONG */
|
||||
unsigned char object[20];
|
||||
enum object_type obj_type, repl_type;
|
||||
|
||||
@ -64,14 +68,14 @@ static int list_replace_refs(const char *pattern, const char *format)
|
||||
data.pattern = pattern;
|
||||
|
||||
if (format == NULL || *format == '\0' || !strcmp(format, "short"))
|
||||
data.fmt = SHORT;
|
||||
data.format = REPLACE_FORMAT_SHORT;
|
||||
else if (!strcmp(format, "medium"))
|
||||
data.fmt = MEDIUM;
|
||||
else if (!strcmp(format, "full"))
|
||||
data.fmt = FULL;
|
||||
data.format = REPLACE_FORMAT_MEDIUM;
|
||||
else if (!strcmp(format, "long"))
|
||||
data.format = REPLACE_FORMAT_LONG;
|
||||
else
|
||||
die("invalid replace format '%s'\n"
|
||||
"valid formats are 'short', 'medium' and 'full'\n",
|
||||
"valid formats are 'short', 'medium' and 'long'\n",
|
||||
format);
|
||||
|
||||
for_each_replace_ref(show_reference, (void *) &data);
|
||||
|
@ -306,7 +306,7 @@ test_expect_success 'test --format medium' '
|
||||
test_cmp expected actual
|
||||
'
|
||||
|
||||
test_expect_success 'test --format full' '
|
||||
test_expect_success 'test --format long' '
|
||||
{
|
||||
echo "$H1 (commit) -> $BLOB (blob)" &&
|
||||
echo "$BLOB (blob) -> $REPLACED (blob)" &&
|
||||
@ -314,7 +314,7 @@ test_expect_success 'test --format full' '
|
||||
echo "$PARA3 (commit) -> $S (commit)" &&
|
||||
echo "$MYTAG (tag) -> $HASH1 (commit)"
|
||||
} | sort >expected &&
|
||||
git replace --format=full | sort > actual &&
|
||||
git replace --format=long | sort > actual &&
|
||||
test_cmp expected actual
|
||||
'
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user