source virtualenvwrapper_lazy.sh 2>/dev/null
- #if [ -n "$VIRTUAL_ENV" ]; then
- # . "$VIRTUAL_ENV/bin/activate"
- #fi
+ if [ -n "$VIRTUAL_ENV" ] && ! type deactivate >/dev/null 2>&1; then
+ . "$VIRTUAL_ENV/bin/activate"
+ fi
elif test -n "$KSH_VERSION" -o -n "$FCEDIT"; then
back() { cd - "$@"; }
if test -x /usr/bin/git >/dev/null 2>&1; then
# chdir to a remote's directory (if the remote is on the local FS)
cdremote() {
- if [ -z "$1" -o -n "$2" ]; then
- echo "Usage: cdremote remote_name" >&2
+ if [ -z "$1" ]; then
+ branch="`git rev-parse --abbrev-ref HEAD`"
+ remote="`git config --get branch.$branch.remote`"
+ elif [ -n "$2" ]; then
+ echo "Usage: cdremote [remote_name]" >&2
return 1
+ else
+ remote="$1"
fi
- cd "`git config --get remote.$1.url`"
+
+ if [ -z "$remote" ]; then
+ echo "Cannot find remote for branch $branch" >&2
+ echo "Usage: cdremote [remote_name]" >&2
+ return 1
+ fi
+
+ cd "`git config --get remote.$remote.url`"
}
if test -n "$BASH_VERSION"; then
- # completion for global aliases in .gitconfig
+ # completion for aliases in global .gitconfig
# fixup rbi rbia rbiap rbip - do refs name completion
_git_fixup() { __gitcomp_nl "$(__git_refs)" ; }