From 3d9f037c60ceae1bd60ee3c861564812a89b05b1 Mon Sep 17 00:00:00 2001 From: Carlos Rica Date: Wed, 5 Sep 2007 03:38:24 +0200 Subject: Function for updating refs. A function intended to be called from builtins updating refs by locking them before write, specially those that came from scripts using "git update-ref". [jc: with minor fixups] Signed-off-by: Carlos Rica Signed-off-by: Junio C Hamano --- send-pack.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'send-pack.c') diff --git a/send-pack.c b/send-pack.c index 9fc8a812f4..f74e66a8ba 100644 --- a/send-pack.c +++ b/send-pack.c @@ -307,20 +307,14 @@ static int send_pack(int in, int out, struct remote *remote, int nr_refspec, cha rs.src = ref->name; rs.dst = NULL; if (!remote_find_tracking(remote, &rs)) { - struct ref_lock *lock; fprintf(stderr, " Also local %s\n", rs.dst); if (will_delete_ref) { if (delete_ref(rs.dst, NULL)) { error("Failed to delete"); } - } else { - lock = lock_any_ref_for_update(rs.dst, NULL, 0); - if (!lock) - error("Failed to lock"); - else - write_ref_sha1(lock, ref->new_sha1, - "update by push"); - } + } else + update_ref("update by push", rs.dst, + ref->new_sha1, NULL, 0, 0); free(rs.dst); } } -- cgit v1.2.1