diff options
author | Hans Ulrich Niedermann <hun@n-dimensional.de> | 2007-11-07 18:35:37 +0100 |
---|---|---|
committer | Hans Ulrich Niedermann <hun@n-dimensional.de> | 2007-11-07 18:35:37 +0100 |
commit | 797dc152f1885e9eee2c8826a491a52ef2f61699 (patch) | |
tree | 7d20ac8608c87c98ab15911b364f0a1dbab26ffe /git-follow/git-follow.in | |
parent | e1930cab994c11ec67adb42fb1ec5ba2a45dd4d4 (diff) | |
download | ndim-git-utils-797dc152f1885e9eee2c8826a491a52ef2f61699.tar.gz ndim-git-utils-797dc152f1885e9eee2c8826a491a52ef2f61699.tar.xz ndim-git-utils-797dc152f1885e9eee2c8826a491a52ef2f61699.zip |
Rename, part II
Diffstat (limited to 'git-follow/git-follow.in')
-rw-r--r-- | git-follow/git-follow.in | 118 |
1 files changed, 0 insertions, 118 deletions
diff --git a/git-follow/git-follow.in b/git-follow/git-follow.in deleted file mode 100644 index d2422ab..0000000 --- a/git-follow/git-follow.in +++ /dev/null @@ -1,118 +0,0 @@ -#!/bin/sh -# - -unset CDPATH -SED="${SED-sed}" - -self=`basename "$0"` -selfdir=`dirname "$0"` -selfdir=`cd "$selfdir" && pwd` -. "$selfdir/git-ndim-sh" - -SUBDIRECTORY_OK="yes" -USAGE="<command> [params...]" - -LONG_USAGE="\ -Let a local subtree of branches follow a remote origin without too much merging. -For more details, see the ${self}(1) man page." -. git-sh-setup - -require_work_tree - -# Abort on error -set -e - - -cmd() { - echo "CMD>" "$@" - gitk --all - "$@" -} - - -gf_init() { - echo "$self: Examining configuration" - git config follow.tree | while read from to restofline; do - if test "x#" = "x$(echo "$from" | sed -n '1s/^\(.\).*/\1/p')"; then continue; fi - echo "" - echo " From: $from" - echo " To: $to" - done -} - -gf_branch() { - branch="$1" - newbranch="follow-old/$branch" - if git-rev-parse --verify "$branch" > /dev/null 2>&1; then - # valid branch - if git-rev-parse --verify "$newbranch" > /dev/null 2>&1; then - : # branch already exists, do nothing - else - cmd git-branch "${newbranch}" "${branch}" - fi - else - echo "$self: gf_branch called with invalid branch \"$branch\"" >&2 - exit 1 - fi -} - - -gf_rmbranch() { - branch="$1" - newbranch="follow-old/$branch" - if git-rev-parse --verify "$branch" > /dev/null 2>&1; then - if git-rev-parse --verify "$newbranch" > /dev/null 2>&1; then - cmd git-branch -D "${newbranch}" - fi - fi -} - - -gf_rebase_tree() { - newroot="$1" - test "x$newroot" = "x" && die "Need <newroot> parameter" - oldroot="$2" - test "x$oldroot" = "x" && die "Need <oldroot> parameter" - echo - echo "$self: Preparing subtree rebase" - git config follow.tree | while read from to restofline; do - if test "x#" = "x$(echo "$from" | sed -n '1s/^\(.\).*/\1/p')"; then continue; fi - gf_branch "$from" - gf_branch "$to" - done - gitk --all - echo - echo "$self: Executing subtree rebase" - git config follow.tree | while read from to restofline; do - if test "x#" = "x$(echo "$from" | sed -n '1s/^\(.\).*/\1/p')"; then continue; fi - cmd git-rebase --onto "$from" "follow-old/$from" "$to" - done - gitk --all - echo - echo "$self: Cleaning up after subtree rebase" - git config follow.tree | while read from to restofline; do - if test "x#" = "x$(echo "$from" | sed -n '1s/^\(.\).*/\1/p')"; then continue; fi - gf_rmbranch "$from" - gf_rmbranch "$to" - done - gitk --all -} - - -# The great command case -command="$1" -if shift; then - case "$command" in - rebase-subtree) - gf_init - gf_rebase_tree "$@" - ;; - *) - die "Invalid command line parameter: \"$command\"" - ;; - esac -else - gf_init -fi - -# End of file. |