diff options
author | merakor <cem@ckyln.com> | 2020-10-02 12:43:20 +0000 |
---|---|---|
committer | merakor <cem@ckyln.com> | 2020-10-02 12:43:20 +0000 |
commit | ae4ac2108b6425f286769edc24997a75405a04ed (patch) | |
tree | 65d3c88ce4e8175b417006b2c9acc517e9e735d2 | |
parent | 8e8aa9345d8df42eae2a468929336fdad38c39dd (diff) | |
download | cpt-ae4ac2108b6425f286769edc24997a75405a04ed.tar.gz |
pkg_extract(): allow the usage of '@' for tags.
This change ensures that we don't have to acquire tags each time.
The user can specify https://blabla.git@v2 to acquire the v2 tag.
This is not needed for branches or commits.
FossilOrigin-Name: 5f8d147c298113f235c28b992e7dba0ec39d19eaae368e5cd7bc359cceb24ecb
-rw-r--r-- | src/cpt-lib | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/cpt-lib b/src/cpt-lib index ebd55a0..6686a81 100644 --- a/src/cpt-lib +++ b/src/cpt-lib @@ -561,7 +561,11 @@ pkg_extract() { log "$1" "Cloning ${url%[@#]*}"; { git init git remote add origin "${url%[@#]*}" - git fetch "${com:+-t}" --depth=1 origin "$com" || git fetch + case "$url" in + # Tags are specified via '@' + *@*) git fetch -t --depth=1 origin "$com" || git fetch ;; + *) git fetch --depth=1 origin "$com" || git fetch + esac git checkout "${com:-FETCH_HEAD}" } || die "$1" "Failed to clone $src" ;; |