TortoiseSVN en Linux ?? Subversion fácil en linux con TuxtoiseSVN

TortoiseSVN en Linux ?? Subversion fácil en linux con TuxtoiseSVN

coffman
/
/

El tortoiseSVN es un programa para Windows que añade acciones relativas al Subversion al menú contextual, por ejemplo "SVN Commit" ó "SVN Update", de modo que para realizar un Update o un Commit unicamente seleccionamos la carpeta o el archivo , botón derecho y ejecutamos ... Extremadamente sencillo !!! Me encanta ;) Hasta ahora este era un privilegio de los usuarios de Windows, hace poco he descubierto como implementar esto mismo en Linux, necesitaremos el zenity (para los dialogos), el nautilus-actions (que se instala mediante apt-get fácilmente) y los 2 scripts que anexo (obtenidos de nautilus-scripts) y los 2 iconos que anexo (sacados del tema tango-blue-materia) La idea es crear 2 acciones nuevas dentro del menu contextual, para ello ejecutamos el nautilus-action-config y creamos las nuevas acciones con las siguientes propiedades: ======================= SVN Commit Icon: /home/vic/fondos/iconos/edit-redo.png Path: /home/vic/.scripts/Subversion/Commit Parameters: %d/%m File Pattern: * Folders/Files: Both Multiple: unchecked =======================

======================= SVN Update Icon: /home/vic/fondos/iconos/edit-undo.png Path: /home/vic/.scripts/Subversion/Update Parameters: %d/%m File Pattern: * Folders/Files: Both Multiple: checked =======================

Creamos los siguientes scripts: /home/vic/.scripts/Subversion/Commit :

#!/bin/sh # # Distributed under the terms of GNU GPL version 2 # # http://marius.scurtescu.com/?p=102

LOGFILE=`mktemp -t svn_commit.XXXXXX`

ICONPATH="`dirname 0/ˋsvn.xpm"LOGMESSAGE=zˋenityentrytitle="Subversion:Commit"text="Enterlogmessage:"width=400windowicon="0\`/svn.xpm" LOGMESSAGE=\`zenity --entry --title="Subversion: Commit" --text="Enter log message:" --width=400 --window-icon="ICONPATH" 2>&1`

if [ ? -eq 0 \] ; then svn commit -m "LOGMESSAGE" "@">@" > LOGFILE cat LOGFILEzenitytextinfotitle="Subversion:Commit"width=600height=400windowicon="dˋirnameLOGFILE | zenity --text-info --title="Subversion: Commit" --width=600 --height=400 --window-icon="\`dirname 0`/svn.xpm" rm -f $LOGFILE fi

y el scripts para el Update /home/vic/.scripts/Subversion/Update :

#!/bin/sh # # Distributed under the terms of GNU GPL version 2 # # http://marius.scurtescu.com/?p=102

LOGFILE=`mktemp -t svn_update.XXXXXX`

svn update "@">@" > LOGFILE #zenity --text-info --title="Subversion: Update" --filename=LOGFILEwidth=600height=400windowicon="dˋirnameLOGFILE --width=600 --height=400 --window-icon="\`dirname 0`/svn.xpm" # Se sustituye la linea de arriba (que es la original) por la de abajo para evitar el error que da con las locales cat LOGFILEzenitytextinfotitle="Subversion:Update"width=600height=400windowicon="dˋirnameLOGFILE | zenity --text-info --title="Subversion: Update" --width=600 --height=400 --window-icon="\`dirname 0`/svn.xpm" rm -f $LOGFILE

Este es el resultado final:

Implementar el resto de acciones del Subversion es sencillo, lo dejo a vuestra imaginación ;) Referencias:

Multiples profiles en Firefox (firefox 2 y 3 a la vez sin tocarse)El futuro de Microsoft