summaryrefslogtreecommitdiff
path: root/guix/git.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix/git.scm')
-rw-r--r--guix/git.scm5
1 files changed, 5 insertions, 0 deletions
diff --git a/guix/git.scm b/guix/git.scm
index dbc3b7caa7..1cb87a4560 100644
--- a/guix/git.scm
+++ b/guix/git.scm
@@ -360,6 +360,11 @@ dynamic extent of EXP."
(define (reference-available? repository ref)
"Return true if REF, a reference such as '(commit . \"cabba9e\"), is
definitely available in REPOSITORY, false otherwise."
+ ;; Note: this must not rely on 'resolve-reference', as that procedure always
+ ;; resolves the references for branch names such as master. The semantic we
+ ;; want here is that unless the reference is exact (e.g. a commit), the
+ ;; reference should not be considered available, as it could have changed on
+ ;; the remote.
(match ref
((or ('commit . commit)
('tag-or-commit . (? commit-id? commit)))