GNU bug report logs -
#78030
[PATCH 0/2] Symref support in channels
Previous Next
Full log
Message #11 received at 78030 <at> debbugs.gnu.org (full text, mbox):
* guix/git.scm (update-cached-checkout): Add support for symbolic references.
Change-Id: Ib7874e2a30f97e51fdfdc2231a3bc5a3b45a177d
---
guix/git.scm | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/guix/git.scm b/guix/git.scm
index 01e0918588..a6d921a8cf 100644
--- a/guix/git.scm
+++ b/guix/git.scm
@@ -563,7 +563,7 @@ (define* (update-cached-checkout url
to REF, and the relation of STARTING-COMMIT relative to the new commit (if
provided) as returned by 'commit-relation'.
-REF is pair whose key is [branch | commit | tag | tag-or-commit ] and value
+REF is pair whose key is [branch | commit | symref | tag | tag-or-commit ] and value
the associated data: [<branch name> | <sha1> | <tag name> | <string>].
If REF is the empty list, the remote HEAD is used.
@@ -599,6 +599,11 @@ (define* (update-cached-checkout url
(string-append "origin/" branch))))
(_ ref)))
+ (define symref-list
+ (match ref
+ (('symref . symref) (list symref))
+ (_ '())))
+
(with-libgit2
(set-git-timeouts connection-timeout read-timeout)
(let* ((cache-exists? (openable-repository? cache-directory))
@@ -613,7 +618,10 @@ (define* (update-cached-checkout url
(remote-fetch (remote-lookup repository "origin")
#:fetch-options (make-default-fetch-options
#:verify-certificate?
- verify-certificate?)))
+ verify-certificate?)
+ ;; Symbolic references are not fetched from the remote by
+ ;; default.
+ #:refspecs symref-list))
(when recursive?
(update-submodules repository #:log-port log-port
#:fetch-options
--
2.49.0
This bug report was last modified 27 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.