diff options
author | Hugues Hiegel <hugues.hiegel@qosmos.com> | 2012-03-02 11:49:03 +0100 |
---|---|---|
committer | Hugues Hiegel <hugues.hiegel@qosmos.com> | 2012-03-02 11:49:03 +0100 |
commit | 2c24aa69ffbecae6c4eb8f541c6f3da345241462 (patch) | |
tree | 00dc835b68807263833d354f995ca59ec7001325 /01_Internal.zsh | |
parent | e1f4769a05e07a42c6e9c245421407d86cf973c5 (diff) |
[Prompts] Hurrah !! Git-rebases are managed better than ever, with squishable git-hash :)
Diffstat (limited to '01_Internal.zsh')
-rw-r--r-- | 01_Internal.zsh | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/01_Internal.zsh b/01_Internal.zsh index e8a27c8..f11a2bc 100644 --- a/01_Internal.zsh +++ b/01_Internal.zsh @@ -118,6 +118,8 @@ __get_hg_branch () fi } +__cleanup_git_branch_name() { sed 's,^tags/,,;s,^remotes/,,;s,\^0$,,' } + __get_git_branch () { local my_git_branch checkouted_branch="yes" @@ -145,7 +147,7 @@ __get_git_branch () # If not on a working GIT branch, get the named current commit-ish inside parenthesis [ "$my_git_branch" = "(no branch)" ] &&\ checkouted_branch="" && \ - my_git_branch="$(git name-rev --name-only HEAD 2>&- | sed 's,^tags/,,;s,^remotes/,,;s,\^0$,,')" + my_git_branch="$(git name-rev --name-only HEAD 2>&- | __cleanup_git_branch_name)" # If neither on a named commit-ish, show commit-id if [ "$my_git_branch" = "undefined" ] @@ -186,7 +188,7 @@ __get_git_branch () fi # Then the result - my_git_branch="[rebase $current/$last: "$(git name-rev --name-only "$(cat $REBASE_DIR/onto 2>/dev/null)" 2>/dev/null)".."$my_git_branch"]" + my_git_branch="[$current/$last: "$(git name-rev --name-only "$(cat $REBASE_DIR/onto 2>/dev/null)" 2>/dev/null | __cleanup_git_branch_name)".."$(echo $my_git_branch)"]" [ -r $REBASE_DIR/head-name ] && my_git_branch=$my_git_branch" "$(< $REBASE_DIR/head-name sed 's/^refs\///;s/^heads\///') else # No rebase in progress, put '(' ')' if needed |