commit f8780fee7a5de8db320833efc4a30aa1ad3814e2 from: Stefan Sperling date: Fri Jun 16 08:40:52 2023 UTC make gotd avoid re-writing existing ref files when a ref-update is a no-op commit - 4448825ab554378228429f5ac53c9cf943cc2503 commit + f8780fee7a5de8db320833efc4a30aa1ad3814e2 blob - e4c9601581a5f7e5f5944692c0f36c0130bacfdd blob + 8f6b8985f8c929a7a85fd139238d5a1481b1fe84 --- gotd/session.c +++ gotd/session.c @@ -499,13 +499,15 @@ update_ref(int *shut, struct gotd_session_client *clie goto done; } - err = got_ref_change_ref(ref, &new_id); - if (err) - goto done; + if (got_object_id_cmp(&new_id, &old_id) != 0) { + err = got_ref_change_ref(ref, &new_id); + if (err) + goto done; - err = got_ref_write(ref, repo); - if (err) - goto done; + err = got_ref_write(ref, repo); + if (err) + goto done; + } free(id); id = NULL;