Prompt para desarrolladores multi-scm (upgraded)

Encontre este post: http://gepatino.blogspot.com.ar/2013/01/prompt-para-desarrolladores-multi-scm.html (GRACIAS GABRIEL)

Y agregue el soporte para banchs de mercurial. UPDATE: separe svn y bazar para que funcione mejor

PS1='${debian_chroot:+($debian_chroot)}[\033[01;32m]u@h[\033[01;34m] w[\033[01;33m]$(get_repo_info) [\033[01;34m]$ [\033[00m]'

function get_repo_info {
    INFO=""
    DIRTY=""

    if [ "$INFO" == "" ] && [ `svn info 2> /dev/null | wc -l` -gt 0 ]
    then
        [ `svn status 2> /dev/null | grep -v '?' | wc -l` -gt 0 ] && DIRTY='*'
        INFO="⚡svn$DIRTY"
    fi

    if [ "$INFO" == "" ] && [ `bzr info 2> /dev/null | wc -l` -gt 0 ]
    then
        [ `bzr status -S 2> /dev/null | grep -v '?' | wc -l` -gt 0 ] && DIRTY='*'
        INFO="⚡bzr$DIRTY"
    fi

    if [ "$INFO" == "" ] && [ `hg branch 2> /dev/null | wc -l` -gt 0 ]
    then
        BRANCH=`hg branch 2> /dev/null`
        [ `hg status 2> /dev/null | grep -v '?' | wc -l` -gt 0 ] && DIRTY='*'
        INFO="⚡hg:$BRANCH$DIRTY"
    fi

    if [ "$INFO" == "" ] && [ `git branch 2> /dev/null | wc -l` -gt 0 ]
    then
        BRANCH=`git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e "s/* (.*)/1/"`
        [ `git status --porcelain 2> /dev/null | wc -l` -gt 0 ] && DIRTY='*'
        INFO="⚡git:$BRANCH$DIRTY"
    fi

    echo $INFO
}

Agregan eso a su ~.bashrc y van a ver algo como esto:

2013-01-12-000458_660x177_scrot

PD: si alguien se anima a seguir por branch de bazar aca hay un codebase
http://blog.grahampoulter.com/2011/09/show-current-git-bazaar-or-mercurial.html

One thought on “Prompt para desarrolladores multi-scm (upgraded)

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>