summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorYour Name2021-02-25 23:50:43 +0100
committerYour Name2021-02-25 23:50:43 +0100
commit876b935deb57f8ab660407ff0a6e707ff4f7c8a1 (patch)
tree42df4ca7c2675d8f5d30a9db7a752583cda5dfb6
parent77123b90940658a241d9a886fe220529aee8ff97 (diff)
downloadaur-876b935deb57f8ab660407ff0a6e707ff4f7c8a1.tar.gz
next iteration
-rw-r--r--PKGBUILD30
1 files changed, 30 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 0e411165ba2b..04237053a03f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -89,6 +89,36 @@ pkgver() {
}
_sourceBranch=$(if [[ "${pkgname}" == *-git ]]; then echo "#branch=master"; else echo "#tag=${_tagPrefix}${pkgver}${_tagSuffix}"; fi)
+
+_patchFromGit() {
+ _patchDir="${srcdir}/$(basename $(pwd))-patch.git"
+ if [ ! -e "${_patchDir}" ];
+ then
+ git clone --bare ${1} ${_patchDir}
+ fi
+
+ _sourceBranchName="${_sourceBranch//#*=/}"
+ # Patch From Specific Range
+ if [ ! -z "${3}" ];
+ then
+ git --git-dir="${_patchDir}" format-patch "^${2}" "${3}" --stdout | git apply
+
+ # Patch From Specific Commit
+ elif [ ! -z "${2}" ];
+ then
+ git --git-dir="${_patchDir}" format-patch -1 "${2}" --stdout | git apply
+
+ # Patch From Dedicated Branch
+ elif git --git-dir="${_patchDir}" rev-parse --verify --quiet "${_sourceBranchName}" > /dev/null \
+ && git --git-dir="${_patchDir}" rev-parse --verify --quiet "${_sourceBranchName}-patch" > /dev/null ;
+ then
+ git --git-dir="${_patchDir}" format-patch "^${_sourceBranchName}" "${_sourceBranchName}-patch" --stdout | git apply
+
+ else
+ echo "No Patch Branch Found [${_sourceBranchName}-patch]"
+
+ fi
+}
# template end;
source+=(