Skip to content

Commit

Permalink
prevent HEAD reflog to be interpreted as current branch reflog
Browse files Browse the repository at this point in the history
The work in progress to enable separate reflog for HEAD will make it
independent from reflog of any branch HEAD might be pointing to. In
the mean time disallow HEAD@{...} until that work is completed. Otherwise
people might get used to the current behavior which makes HEAD@{...} an
alias for <current_branch>@{...} which won't be the case later.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Nicolas Pitre authored and Junio C Hamano committed Feb 2, 2007
1 parent 08f1675 commit fe55851
Showing 1 changed file with 15 additions and 1 deletion.
16 changes: 15 additions & 1 deletion sha1_name.c
Original file line number Diff line number Diff line change
Expand Up @@ -301,12 +301,26 @@ static int get_sha1_basic(const char *str, int len, unsigned char *sha1)
fprintf(stderr, warning, len, str);

if (reflog_len) {
/* Is it asking for N-th entry, or approxidate? */
int nth, i;
unsigned long at_time;
unsigned long co_time;
int co_tz, co_cnt;

/*
* We'll have an independent reflog for "HEAD" eventually
* which won't be a synonym for the current branch reflog.
* In the mean time prevent people from getting used to
* such a synonym until the work is completed.
*/
if (!strncmp("HEAD", str, len) &&
!strncmp(real_ref, "refs/", 5)) {
error("reflog for HEAD has not been implemented yet\n"
"Maybe you could try %s%s instead.",
strchr(real_ref+5, '/')+1, str + len);
exit(-1);
}

/* Is it asking for N-th entry, or approxidate? */
for (i = nth = 0; 0 <= nth && i < reflog_len; i++) {
char ch = str[at+2+i];
if ('0' <= ch && ch <= '9')
Expand Down

0 comments on commit fe55851

Please sign in to comment.