fast-import: Allow "reset" to delete a new branch without error

Creating a branch in fast-import and then resetting it without making
any further commits to it currently causes an error message at the
end of the import.

This error is triggered by cvs2svn's git backend, which uses a
temporary fixup branch when it creates tags, because the fixup branch
is reset after each tag.

This patch prevents the error, allowing "reset" to be used to delete
temporary branches.

Signed-off-by: Eyvind Bernhardsen <eyvind-git@orakel.ntnu.no>
Acked-by: Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Eyvind Bernhardsen 2008-03-16 20:49:09 +01:00 коммит произвёл Junio C Hamano
Родитель 20fd60bf6a
Коммит 198724ad4e
1 изменённых файлов: 2 добавлений и 0 удалений

Просмотреть файл

@ -1516,6 +1516,8 @@ static int update_branch(struct branch *b)
struct ref_lock *lock; struct ref_lock *lock;
unsigned char old_sha1[20]; unsigned char old_sha1[20];
if (is_null_sha1(b->sha1))
return 0;
if (read_ref(b->name, old_sha1)) if (read_ref(b->name, old_sha1))
hashclr(old_sha1); hashclr(old_sha1);
lock = lock_any_ref_for_update(b->name, old_sha1, 0); lock = lock_any_ref_for_update(b->name, old_sha1, 0);