diff --git a/PKG-INFO b/PKG-INFO
index a92748ab9090ae61cd007a60ffa4b4408bf37d7d..5a61f69ed2e52a54b16ace65962f1be3c8ccd662 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
 Metadata-Version: 1.0
 Name: pidp.tools
-Version: 1.3.4
+Version: 1.4.0
 Summary: PETRA III Debian Package Tools
 Home-page: https://stash.desy.de/projects/JMK/repos/pidptools/browse/
 Author: Jan Kotanski
diff --git a/pidpbuild b/pidpbuild
index 0796ab740cc12cad13c51ee5814ee7b5740a1df3..7d1f06a91a194f6cb14ccf8a24245581e2344378 100755
--- a/pidpbuild
+++ b/pidpbuild
@@ -45,6 +45,15 @@ do
 	    -p|--patch)
 		export PATCH=YES
 		;;
+	    -pb|--pbuilder)
+		export PBUILDER=YES
+		;;
+	    -cpb|--createpb)
+		export CREATEPB=YES
+		;;
+	    -a=*|--arch=*)
+		export ARCH="${i#*=}"
+		;;
 	    -c|--continue)
 		export CONTINUE=YES
 		;;
@@ -66,7 +75,7 @@ if [[ ! -z $HELP ]] && [[ -z $PACKAGE ]] ; then
     echo "Error: PACKAGE variable is not defined"
 fi
 if [[ ! -z $HELP ]] || [[ -z $PACKAGE ]] ; then
-    echo "pidpbuild version 1.3.4"
+    echo "pidpbuild version 1.4.0"
     echo ""
     echo "usage: pidpbuild [<TARBALL>] [-v=<VERSION>] [-ns|--no-signature]"
     echo "                 [-e=<DEBEMAIL>] [-f=<DEBFULLNAME>] [-ne|--nodebenv]"
@@ -92,6 +101,9 @@ if [[ ! -z $HELP ]] || [[ -z $PACKAGE ]] ; then
     echo "  -m, --merge           upstream/* merged into debian/*"
     echo "                          by default: replace is performed"
     echo "  -p, --patch           the patching procedure"
+    echo "  -pb, --pbuilder       use git-pbuilder"
+    echo "  --cpb, --createpb     create git-pbuilder environment"
+    echo "  -a=, --arch=          git-pbuilder architecture"
     echo "  -c, --continue        continue the built of the debian package, e.g.:"
     echo "                        after a conflict detected between patches "
     echo "                        and the new source tarball or "
@@ -131,6 +143,12 @@ else
 	echo "  DEBFULLNAME=\"$DEBFULLNAME\""
 	echo "  DEBEMAIL=\"$DEBEMAIL\""
 	echo ""
+	if ! [[ -z $PBUILDER ]] ; then
+	if  [[ -z $CREATEPB ]] ; then
+	    DIST=$RELEASE git-pbuilder update
+	else
+	    DIST=$RELEASE git-pbuilder create
+	fi    
 	if [[ -z $VERSION ]] ; then
 	    RE='^[0-9]+$'
 	    read -r FIRSTLINE < debian/changelog
@@ -260,9 +278,20 @@ else
     fi
     git clean -f -d
     if [[ -z $NOSIGNATURE ]] ; then
-	gbp buildpackage --git-tag
+	if [[ -z $PBUILDER ]] ; then
+	    gbp buildpackage --git-tag
+	else
+	    gbp buildpackage --git-tag --git-pbuilder --git-dist=$RELEASE
+	    lintian
+	    debsign
+	fi
     else
-	gbp buildpackage -us -uc --git-tag
+	if [[ -z $PBUILDER ]] ; then
+	    gbp buildpackage -us -uc --git-tag
+	else
+	    gbp buildpackage --git-tag --git-pbuilder --git-dist=$RELEASE
+	    lintian
+	fi
     fi
     if [[ ! -z $PIDTOKILL ]] ; then
 	(sleep 1 && kill -TERM $PPID $PIDTOKILL &)
diff --git a/pidpclone b/pidpclone
index 8661c06ceb345285e47169282663ca549708dbfa..381e7f9a01b4918f4babd738265a425f32787c47 100755
--- a/pidpclone
+++ b/pidpclone
@@ -59,7 +59,7 @@ if [[ ! -z $HELP ]] && [[ -z $PACKAGE ]] ; then
     echo "Error: PACKAGE variable is not defined"
 fi
 if [[ ! -z $HELP ]] || [[ -z $PACKAGE  ]] ; then
-    echo "pidpclone version 1.3.4"
+    echo "pidpclone version 1.4.0"
     echo ""
     echo "usage: pidpclone <DEB-PACKAGE-NAME> [-p|--patch] [-u=<USER>] [-h|--help]"
     echo "                  [-e=<DEBEMAIL>] [-f=<DEBFULLNAME>] [-ne|--nodebenv] "
@@ -120,17 +120,17 @@ else
     git fetch --all
     if [[  $(git checkout -b upstream/$RELEASE origin/upstream/$RELEASE > /dev/null 2>&1) && $? ]]; then
 	git checkout upstream/$RELEASE
-	git pull origin upstream/$RELEASE || true
+	git pull origin upstream/$RELEASE
     fi
     if [[  $(git checkout -b pristine-tar origin/pristine-tar > /dev/null 2>&1) && $? ]]; then
 	git checkout pristine-tar
-	git pull origin pristine-tar || true
+	git pull origin pristine-tar
     fi
     if [[  $(git checkout -b debian/$RELEASE origin/debian/$RELEASE > /dev/null 2>&1) && $? ]]; then
-	git pull origin debian/$RELEASE || true
+	git pull origin debian/$RELEASE
     else
 	git checkout debian/$RELEASE
-	git pull origin debian/$RELEASE || true
+	git pull origin debian/$RELEASE
     fi
     git clean -f -d
     git commit -a -m 'clean the repository' > /dev/null 2>&1 || true
diff --git a/pidpcreate b/pidpcreate
index 6c65b15ce3b2206cd1c983914e66daef311e4a5c..ae5463d032c301f5308de749ef1a158b36f3df0b 100755
--- a/pidpcreate
+++ b/pidpcreate
@@ -70,7 +70,7 @@ if [[ ! -z $HELP ]] && [[ -z $TARBALL ]] ; then
     echo "Error: TARBALL variable is not defined"
 fi
 if [[ ! -z $HELP ]] || [[ -z $PACKAGE ]] || [[ -z $TARBALL ]] ; then
-    echo "pidpbuild version 1.3.4"
+    echo "pidpbuild version 1.4.0"
     echo ""
     echo "usage: pidpcreate <DEB-PACKAGE-NAME> <TARBALL> [-v=<SRCVERSION>] [-ns|--no-signature]"
     echo "                 [-e=<DEBEMAIL>] [-f=<DEBFULLNAME>] [-ne|--nodebenv]"
diff --git a/pidppush b/pidppush
index 17f167cc12d17c2a77f8bbef67f6ea9dbdafcf28..02cbc8fc0bedc0245acb57c9296e9d2bc1ea61cc 100755
--- a/pidppush
+++ b/pidppush
@@ -45,7 +45,7 @@ if [[ ! -z $HELP ]] && [[ -z $DEBPACKAGE ]] ; then
     echo "Error: DEB-PACKAGE-NAME argument is not defined"
 fi
 if [[ ! -z $HELP ]] || [[ -z $DEBPACKAGE  ]] ; then
-    echo "pidppush version 1.3.4"
+    echo "pidppush version 1.4.0"
     echo ""
     echo "usage: pidppush <DEB-PACKAGE-NAME> "
     echo ""
diff --git a/setup.py b/setup.py
index 0432ed2bf6e0ce4e75d8d2f35a13f00bedbfb615..3c2443aa6ca7cfc9a1deeaf55b392575d1dff1f2 100755
--- a/setup.py
+++ b/setup.py
@@ -30,7 +30,7 @@ def read(fname):
     return open(os.path.join(os.path.dirname(__file__), fname)).read()
 
 #: (:obj:`str`) full release number
-release = '1.3.4'
+release = '1.4.0'
 
 #: (:obj:`dict` <:obj:`str` , any >`) metadata for distutils
 SETUPDATA = dict(