Browse Source

Use a common function to get the pretty name of refs

The result should be consistent between fetch and push, so we ought to
use the same code in both cases, even though it's short.

Signed-off-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Daniel Barkalow 16 years ago committed by Junio C Hamano
parent
commit
a9c37a72c4
  1. 6
      builtin-fetch.c
  2. 10
      builtin-send-pack.c
  3. 10
      refs.c
  4. 2
      refs.h

6
builtin-fetch.c

@ -197,11 +197,7 @@ static int update_local_ref(struct ref *ref,
struct commit *current = NULL, *updated; struct commit *current = NULL, *updated;
enum object_type type; enum object_type type;
struct branch *current_branch = branch_get(NULL); struct branch *current_branch = branch_get(NULL);
const char *pretty_ref = ref->name + ( const char *pretty_ref = prettify_ref(ref);
!prefixcmp(ref->name, "refs/heads/") ? 11 :
!prefixcmp(ref->name, "refs/tags/") ? 10 :
!prefixcmp(ref->name, "refs/remotes/") ? 13 :
0);


*display = 0; *display = 0;
type = sha1_object_info(ref->new_sha1, NULL); type = sha1_object_info(ref->new_sha1, NULL);

10
builtin-send-pack.c

@ -172,16 +172,6 @@ static void update_tracking_ref(struct remote *remote, struct ref *ref)
} }
} }


static const char *prettify_ref(const struct ref *ref)
{
const char *name = ref->name;
return name + (
!prefixcmp(name, "refs/heads/") ? 11 :
!prefixcmp(name, "refs/tags/") ? 10 :
!prefixcmp(name, "refs/remotes/") ? 13 :
0);
}

#define SUMMARY_WIDTH (2 * DEFAULT_ABBREV + 3) #define SUMMARY_WIDTH (2 * DEFAULT_ABBREV + 3)


static void print_ref_status(char flag, const char *summary, struct ref *to, struct ref *from, const char *msg) static void print_ref_status(char flag, const char *summary, struct ref *to, struct ref *from, const char *msg)

10
refs.c

@ -736,6 +736,16 @@ int check_ref_format(const char *ref)
} }
} }


const char *prettify_ref(const struct ref *ref)
{
const char *name = ref->name;
return name + (
!prefixcmp(name, "refs/heads/") ? 11 :
!prefixcmp(name, "refs/tags/") ? 10 :
!prefixcmp(name, "refs/remotes/") ? 13 :
0);
}

const char *ref_rev_parse_rules[] = { const char *ref_rev_parse_rules[] = {
"%.*s", "%.*s",
"refs/%.*s", "refs/%.*s",

2
refs.h

@ -79,6 +79,8 @@ extern int for_each_reflog(each_ref_fn, void *);
#define CHECK_REF_FORMAT_WILDCARD (-3) #define CHECK_REF_FORMAT_WILDCARD (-3)
extern int check_ref_format(const char *target); extern int check_ref_format(const char *target);


extern const char *prettify_ref(const struct ref *ref);

/** rename ref, return 0 on success **/ /** rename ref, return 0 on success **/
extern int rename_ref(const char *oldref, const char *newref, const char *logmsg); extern int rename_ref(const char *oldref, const char *newref, const char *logmsg);



Loading…
Cancel
Save