Saltar al contenido

Archivo

Etiqueta: Leopard

Subversion

Alguna vez se emocionaron por realizar demasiados cambios a la vez y acabaron “estropeando” su proyecto… y no solo me refiero a desarrollo de software, ¿Qué tal la tesis?…

A mi me sucedió el año pasado, y fue precisamente mientras buscaba en una serie de carpetas marcadas como “octubre2008″, “noviembre2008″, “diciembre2008″ etc una versión lo más coherente posible de mi tesis… que supe que tenía que aprender a usar alguna herramienta que me permitiera regarla con confianza en mis proyectos… y que cuando decidiera, pudiera retomar alguna idea de versiones anteriores de los archivos, sin arrepentimientos ni sentimientos encontrados.

Subversion nos permite hacer esto y mucho más, en este post les propongo sencillos tips para que puedan configurar su repo en 5 minutos y se ahorren muchos dolores de cabeza :) .

Subversión viene instalado Mac OS X Leopard y en Debian Linux… si la terminal no reconoce el comando “svn” les recomiendo lo bajen desde la página del autor.

Una de las ventajas que le veo a Subversion frente a Concurrent Version System (CVS), es que solo existe una versión para todo el repositorio, es decir si tengo n archivos en mi repositorio,  hago x número de cambios en el (add, delete, actualizo archivos, etc.) y posteriormente actualizo el repo (mediante el commando commit del cual hablaremos más adelante) la versión del mismo aumentará en 1, es decir:

versióndelrepo++;

No como en CVS donde se mantiene un “contador” por cada archivo y sinceramente se me hace un relajo administrar eso…

Pero bueno, esto tendrá sentido para ustedes una vez que hayan trabajado un rato con Subversion.

Paso 1: Creación del repositorio

Nuestro repo se llamará:

LaTesisImposible

Y lo guardaremos en:

/Users/dario/Documents/subversionRepos

Para esto utilizaremos los siguiente comandos desde la consola:

mkdir /Users/dario/Documents/subversionRepos
svnadmin create /Users/dario/Documents/subversionRepos/LaTesisImposible

Paso 2: Configuración del repositorio (intro):

Listo! si la ruta es válida se generará nuestro repositorio, si le damos un “ls” a la carpeta LaTesisImposible deben de aparecer las siguientes subcarpetas:

README.txt    dav        format        locks
 conf        db        hooks

El README solamente nos notifica que el directorio es un repositorio Subversion, si lo quieren checar denle un:

nano README.txt

La carpeta hooks contiene “scripts” para asegurar que básicamente no la estamos regando… por ejemplo, hay un script llamado pre-commit.tmp donde Subversion checa que siempre que subamos cambios al repo, pongamos un comentario (ahora les explico como hacerlo), y que si el mensaje es NULL, nos mande un error, también comprueba que tenemos permisos para actualizar el repo.

y ahora es cuando entra la importancia de la carpeta conf…

Si checamos los archivos dentro de esa carpeta encontraremos lo siguiente:

moebius1:conf dario$ ls
 authz        passwd        svnserve.conf

Por lo que es obvio que esta carpeta es el “cadenero a la puerta del bar”.

De una vez les paso la liga al libro “oficial” de Subversion, donde se detalla como establecer permisos de lectura/escritura y todo aquello.

Paso 3: Sincronizar nuestra carpeta de proyecto con el repositorio

Tenemos que movernos a donde queremos que se genere nuestra carpeta de trabajo, por ejemplo, les propongo esta ruta:

cd /Users/dario/Documents/Universidad/9noSemestre/

dentro de esta carpeta ejecutamos:

svn co file:///Users/dario/Documents/subversionRepos/LaTesisImposible

Lo que hara que dentro de 9noSemetre se genere una carpeta llamada LaTesisImposible la cual ya está sincronizada con el repo.

Paso 4: Generar archivos en nuestra carpeta de trabajo

Bueno, pues a trabajar!! yo generé 2 archivos:

miTesis.txt
miBibliografia.txt

//(recuerden que a las compus aún no le gustan los acentos en los nombres de archivos)

Obviamente dentro de la carpeta sincronizada (no en el repo).

Paso 5: Añadir archivos al repo.

svn add miTesis.txt miBibliografia.txt (añade solo esos 2 archivos)
ó
svn add *.txt (añade todos los archivos con extensión txt)
ó
svn add *.* (añade todos los archivos)

Paso 6: Subir los cambios en el repo.

svn commit -m "Añadidos los archivos miTesis.txt y miBibliografia.txt, espero acabar antes de Diciembre"

la opción -m nos permite agregar un mensaje al commit, esto es básico para saber en términos generales lo que vamos cambiando de versión a versión, esto nos permitirá controlar más nuestro desarrollo.

si todo salió bien deben de ver lo siguiente en la Terminal:


Adding         miBibliografia.txt

Adding         miTesis.txt

Transmitting file data .

Committed revision 1.

Listo!!

Ya tienen un repositorio Subversion funcionando, consulten el libro que les pasé arriba para que vayan conociendo más comandos y se enamoren de este
programa.

Tips:

Introduzcan en la Terminal:

svn help

para ver todos los argumentos disponibles, junto con el libro de subversion pueden crear scripts muy interesantes!!

Hey!! una recomendación, utilicen estos comandos para hacer archivos, borrar archivos dentro de las carpetas de trabajo porque de otra manera tendrán que hacer todo dos veces, por ejemplo:

Si quiero generar una carpeta que este bajo control de versión en una línea puedo hacer lo siguiente:

svn mkdir subCarpetaDeLaTesisImposible

esto hará dos cosas:

  1. Creará la carpeta.
  2. La agregará al repo, como si le diera un add.

De otra manera tendría que hacer esto:

mkdir subCarpetaDeLaTesisImposible
svn add subCarpetaDeLaTesisImposible

¡Espero que les haya servido este post como introducción a Subversion!

Hola amigos de Apuntux!!

Hoy les traigo un sencillo comando que les permitirá cambiar la mac address de sus interfaces de red:

Desde la consola ejecuten:

sudo ifconfig en0 lladdr 00:00:00:00:00:00

Solo cambien “en0″ por la interfaz de su agrado y obviamente la MAC address (en este caso 00:00:00:00:00:00) por una válida!.

Ifconfig es un comando muy poderoso, espero en el futuro traerles más acerca de el. En este momento solo estamos aplicando la opción “lladdr” la cual nos permite cambiar la dirección a nivel de la capa de enlace (la segunda de abajo hacia arriba en el modelo OSI) en el caso de interfaces ethernet, dicha dirección corresponde a la MAC Address.

Les sugiero que chequen por ahí direcciones MAC que sean válidas, les propongo que prueben Quintura.com como buscador, no los defraudará!.

Saludos.

Atte:

Dario Alessandro

Hola, una nota rápida, para todos aquellos que tienen Mac OS X posterior a la versión 10.2,  el Finder ya no puede entrar correctamente a los servidores FTP!!! , concretamente no puedes entrar con privilegios de lectura/escritura solamente puedes leer del servidor!!

http://support.apple.com/kb/TA21175?viewlocale=en_US

Les recomiendo Fetch!! saludos.

http://fetchsoftworks.com

Antes que nada, quiero agradecer a mi novia que me permitió probar VNC en su computadora (ella misma lo configuró)!!!

Como Linuxero, Machead o hasta Windowsero de hueso colorado, no falta el amigo que te hable a las 11:30 pm para pedirte ayuda con su computador, o quizás cuentas con un servidor en x lugar y lo quieres administrar remotamente de forma gráfica, es por eso que les presento VNC, una herramienta para compartir el escritorio y poder realizar las tareas antes mencionadas.

VNC corre sobre un protocolo llamado RFB creado por el Olivetti Research Lab (ORL), el cual, fue adquirido por AT&T y ahora se llama AT&T Laboratories Cambridge. El código fuente original fue liberado bajo la licencia GPL de GNU por lo que estoy casi seguro que casi todas las posteriores implementaciones son libres también.

Pero ok, vamos a llevarlos paso a paso en la configuración de dicho servicio:

1) Abrir los puertos necesarios para la comunicación:

En el caso de que los ordenadores se deban interconectar utilizando internet, es necesario primeramente configurar nuestro router para que nos deje

“salir” a través de los siguientes puertos :

TCP 5500, TCP5800 y TCP 5900

que son los más usados para las sesiones VNC.

O simplemente adquieran la ip pública del router, si tienen las cochinadas de 2wire (como yo) se le llama modo DMZplus.

Ojo: Desde el momento que se ponen en este modo, su computadora debe de “cuidarse sola”, si tienen el firewall de Linux o de Mac bien configurado no deben de tener problemas.

Si por lo contrario, usted quiere establecer sesiones remotas entre equipos que se encuentran en la misma LAN, asegúrese de que los puertos anteriormente mencionados no están siendo bloqueados por alguna otra razón y que efectivamente los equipos están en la misma subred, por default los 2Wire asignan a todos los dispositivos conectados la siguiente dirección de red:

192.168.1.xxx 255.255.255.0

con lo que basta para que la comunicación funcione.

No olvides verificar la conectividad entre las máquinas utilizando pings o telnet, incluso un conection refused nos indica que el equipo está vivo jajaja.

2) Configurar el servidor VNC:

2.1) Configurar servidor VNC en Mac OS X Leopard:

Si Cuentan con Leopard, ya cuentan con un servidor VNC listo para atacar:

2.1.1) Accedan a preferencias del sistema

2.1.2)Click en compartir

2.1.3)Click en compartir pantalla

2.1.4)Click en ajustes de ordenador

2.1.5) Definan una contraseña de accesocompartir1

Debido a que ya le asignamos una contraseña, yo le puse en permitir a todos los usuarios (obvio que sepan la contraseña), eso se los dejo a su juicio…

2.2) Configuración de servidor VNC en Ubuntu 8.04/9.04

En Ubuntu… también tenemos un servidor VNC listo para disparar:

2.2.1) Accedan a el pulsando en Sistema/Preferencias/Escritorio Remoto y debe de aparecer lo siguiente:

ubuntu-vnc2

2.2.2) Configuren tal como lo muestra la imagen y nuevamente asignen una contraseña, en la pestaña de avanzados es posible reconfigurar el puerto que se va a utilizar, es decir, en este caso el 5900.

3) Configurar cliente VNC:

3.1) En Leopard

Desde el momento que configuramos el servicio, se levantan tanto servidor como cliente por lo que no hay nada que configurar.

Solamente desde el finder…

3.1.1) Click en Ir/Conectarse al servidor

y asumiendo que ya configuró su servidor VNC en Ubuntu… introduzca el siguiente comando:

3.1.2) vnc://xxx.xxx.xxx.xxx donde las x son la ip de su computadora en Ubuntu…

3.1.3) Introduzca la contraseña y le aparecerá un mensaje de advertencia donde dice que las teclas que presione no están encriptadas por lo que puede ser

rastreada la comunicación… ignore el mensaje (probablemente después haga un post de como establecer una sesión VNC supermegasegura).

si todo sale bién, se iniciará la sesión VNC:

vnc-ubuntu-jalando

Para cerrar sesión, cierre solamente la ventana.

3.2) En Ubuntu 8.04 /9,04

3.2.1) En necesario instalar el cliente desde la consola:

sudo apt-get install xtightvncviewer

3.2.2) Después ejecuten desde la consola:

xtightvncviewer xxx.xxx.xxx.xxx donde en las x ponen la ip del servidor vnc.

Conclusiones/notas finales

Montamos VNC servidor y cliente en Ubuntu y Leopard, sin embargo, no analizamos la seguridad de dicho servicio (como sesiones seguras con ssh), aunque probamos el concepto.

Saludos y nos vemos en Apuntux.com!!