summaryrefslogtreecommitdiff
path: root/scripts/utils
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/utils')
-rw-r--r--scripts/utils20
1 files changed, 19 insertions, 1 deletions
diff --git a/scripts/utils b/scripts/utils
index 1c364a0..4f8fbec 100644
--- a/scripts/utils
+++ b/scripts/utils
@@ -58,7 +58,25 @@ git_fetch() {
git_fetch_bare "$1" "$2"
local BRANCH="$3"
[ -n "$BRANCH" ] || BRANCH=master
- git --git-dir="$WORKSPACE/$2" --bare worktree add --detach $2 $BRANCH
+ git --git-dir="$WORKSPACE/$2" --bare worktree add --detach "$2" "$BRANCH"
+}
+
+# Clones one depth given repository with given branch/tag/hash
+# First agument has to be a source URL
+# Second argument is name of directory to which will be directory cloned in.
+# Second argument is optional and should be branch name (master is used if not
+# provided).
+git_clone() {
+ local BRANCH="$3"
+ [ -n "$BRANCH" ] || BRANCH=master
+ (
+ mkdir "$2"
+ cd "$2"
+ git init
+ git remote add origin "$1"
+ git fetch --depth 1 origin "$BRANCH"
+ git checkout FETCH_HEAD
+ )
}
# Lock special lock for this job