Merge branch 'master' into git-bulk-command

This commit is contained in:
Niklas Schlimm 2017-03-19 19:49:08 +01:00
commit de15bf7fb0
2 changed files with 19 additions and 7 deletions

View file

@ -41,16 +41,22 @@ test -z "$user" && abort "git config user.email required"
# branch
branch=${1-$(git symbolic-ref HEAD | sed 's/refs\/heads\///')}
remote=$(git config branch."$branch".remote)
if [ -z "$remote" ]; then
echo 'no upstream found, push to origin as default'
remote="origin"
fi
[ "$remote" == "." ] && abort "the upstream should be a remote branch."
# make sure it's pushed
git push origin "$branch" || abort "failed to push $branch"
git push "$remote" "$branch" || abort "failed to push $branch"
origin=$(git config remote.origin.url)
if [[ $origin == git@* ]]; then
project=${origin##*:}
remote_url=$(git config remote."$remote".url)
if [[ "$remote_url" == git@* ]]; then
project=${remote_url##*:}
else
project=${origin#https://*/}
project=${remote_url#https://*/}
fi
project=${project%.git}

View file

@ -1,11 +1,17 @@
#!/usr/bin/env bash
set -e
# Assert there is at least one branch provided
test -z $1 && echo "new branch name required." 1>&2 && exit 1
new_branch="$1"
old_branch="${2-$(git symbolic-ref --short -q HEAD)}"
remote=$(git config branch."$old_branch".remote)
git branch -m "$old_branch" "$new_branch"
git push origin :"$old_branch"
git push --set-upstream origin "$new_branch"
# check if the branch is tracking a remote branch
if [[ -n "$remote" && "$remote" != "." ]]
then
git push "$remote" :"$old_branch"
git push --set-upstream "$remote" "$new_branch"
fi