+
+if [[ $( has subl ) == 'yes' ]]; then
+    export GUI_EDITOR="subl -w"
+elif [[ $( has bbedit ) == 'yes' ]]; then
+    export GUI_EDITOR="bbedit -w"
+elif [[ $( has mate_wait ) == 'yes' ]]; then
+    export GUI_EDITOR="mate_wait"
+else
+    export GUI_EDITOR="vim"
+fi
+
+if [[ -z "$SSH_TTY" ]]; then
+    export EDITOR="$GUI_EDITOR"
+    export SVN_LOG_EDITOR="$GUI_EDITOR"
+    export GIT_SEQUENCE_EDITOR="$GUI_EDITOR"
+else
+    export EDITOR=vim
+    export SVN_LOG_EDITOR=vim
+    export GIT_SEQUENCE_EDITOR=vim
+fi
+
+switchto git