sábado, 19 de diciembre de 2015

Manejo de excepciones en jsp


Primero debemos saber bien que es una excepción y su manejo y para ello aqui esta este link de wikipedia

https://es.wikipedia.org/wiki/Manejo_de_excepciones

Ahora ya que recordamos o conocemos que es una excepción procedemos  a su manejo en tiempo de ejecución en una aplicación web con jsp.

En mi caso se ha creado una excepción que controla si un usuario esta esta loggeado o no.
-----------------------------------------------------------------------------------
public class ErrorLoggeo extends Exception {
    public ErrorLoggeo(String e) {
        super(e);
    }

-----------------------------------------------------------------------------------

Ahora iremos al scriptlet que controla el jsp para manejar esa excepción:
-------------------------------------------------------------------------------------------------------------
public static queryUser(String id_usuario) throws ErrorLoggeo { 
...

if (userService.getCurrentUser() == null){
            throw new ErrorLoggeo("Usuario no registrado");
        }
...
}
--------------------------------------------------------------------------------------------------------------

Ahora en tu archivo jsp, vamos a cachar esta excepción que creamos y la redirigimos a una pagina de error la cual sirve para advertir el error  y ejecutar la acción prudente para manejarlo.
-------------------------------------------------------------------------------------------------------------------------
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<!DOCTYPE html>
<html>
    <%
        String id_usuario = request.getParameter("id");
        String usuario = null;
        try{
        usuario = queryUser(id_usuario);
        }catch(ErrorLoggeo e){
           String redirectURL = "/jsp/error.jsp";
           response.sendRedirect(redirectURL);
        }
    %>
    <head>
        <link rel="...
--------------------------------------------------------------------------------------------------------------------------

Con esto pasos ya solo debemos hacer las correcciones pertinentes en la pagina de error para así controlar correctamente este tipo de errores.

Hay otras formas de controlar las excepciones desde el web.xml pero ya lo pondré en otra entrada.

Por cierto Guillermo L. R. autor de este blog, les desea felices Fiestas.

martes, 1 de diciembre de 2015

Otra forma de respaldar VM de GCE a dispositivo local

Esta forma es muy parecida a la anteriormente publicada, solo cambia en algunos puntos, pero a mi parecer esta forma es mas controlada y te da mas seguridad de que se esta respaldando todo el disco duro.


1.- Crear un disco duro del doble de capacidad del que se quiere respaldar, esto con la finalidad de poder guardar la imagen del disco duro a respaldar de manera holgada en el disco duro nuevo creado.

2.- Cuando se tenga el nuevo disco duro hay que entrar a la instancia de GCE para montar el nuevo disco en nuestro SO.

Revisar que discos duros se encuentran disponibles
$ ls -l /dev/disk/by-id/google-*
Hacer la carpeta donde se va a montar el nuevo disco duro
$ sudo mkdir /mnt/tmp
Montar el disco duro donde se guardara el respaldo

$ sudo /usr/share/google/safe_format_and_mount -m "mkfs.ext4 -F" /dev/sdb /mnt/tmp

3.- Ahora lo que se hace es una copia entera del nuestro disco duro al nuevo montado
$ dd if=/dev/disk/by-id/[Nuestro disco duro a copiar] of=/mnt/temp/backup/disk.img bs=5M

 4.- El proceso anterior tardara unos minutos (en mi caso fueron 60 min) y ahora solo resta comprimir ese archivo y descargarlo (en la compresión del archivo me llevo 70 min)

Puedes usar pigz para hacer una compresión mas pequeña

5.- Ahora solo descarga el archivo y así tendrás una copia de tu DD mas controlada.




lunes, 30 de noviembre de 2015

Cambiar el tamaño de disco duro en una VM en GCE

Que tal ya me había tardado en poner una entrada, debería ser mas constante, pero publico aquí cosas que aprendo sobre la marcha de mi trabajo.

Así que el día de hoy me tope con el problema de cambiar el tamaño de un disco duro de una maquina virtual que administro en Google Compute Engine (GCE) y pues después de andar buscando aquí tengo el como hacer el resize de un HD en GCE


Los pasos para hacer le resize del disco duro son los siguientes:

  1. Crea un nuevo disco con mas espacio en GCE con la imagen antes creada a la cual quieras incrementar el espacio de disco duro.
  2. Crea una nueva instancia de GCE usando para ser creada el nuevo disco el cual ya tiene mas capacidad que el anterior.
  3. Ingresa en tu instancia y utiliza el siguiente comando
$ sudo resize2fs /dev/sda1 

Con esto tu parición pasara del almacenamiento pasado al nuevo como se puede ver en la imagen de arriba

Y ya con eso tendrás nuevo espacio disponible, debes recordar que si incrementas el espacio del disco o de otro componente en GCE puede venir un cargo extra en la factura.

Información vía : stackoverflow

lunes, 12 de octubre de 2015

Exportar instance (VM) de Google Compute engine para resguardo local (LINUX VM)

Para hacer un respaldo de la VM de GCE debes de hacer lo siguientes:

1.- Crear un nuevo disco temporal este debe ser una copia del disco actual que estas utilizando, para esto debes de hacer un "snapshot" de tu disco y con ese crear el nuevo.





 


2.-Debes de ejecutar el comando attach-disk desde tu maquina local para poder vincular el disco creador a tu sistema operativo, esto se logra con el siguiente comando:
$ gcloud compute instances attach-disk  [tu instancia]  --disk temp  \--device-name  temporary-disk  \--zone  [zona de tu proyecto]   

4.-Con el proceso anterior finalizado, ingresa por SSH a tu VM y revisa que el vinculo de tu Disco duro temporal se haya realizado y se encuentre montado en tu sistema operativo. para eso deberás listar los discos duros de tu SO con el siguiente comando:
$ ls -l /dev/disk/by-id/google-*
tendrás un salida similar a la siguiente:

$ ls -l /dev/disk/by-id/google-* lrwxrwxrwx 1 root root 9 Jul 29 17:56 /dev/disk/by-id/google-persistent-disk-0 -> ../../sda lrwxrwxrwx 1 root root 10 Jul 29 17:56 /dev/disk/by-id/google-persistent-disk-0-part1 -> ../../sda1 lrwxrwxrwx 1 root root 9 Aug 25 18:16 /dev/disk/by-id/google-temporal-disk -> ../../sdb # El disco temporal reside en: /dev/sdb

5.-Se crea un carpeta temporal, este paso es importante recuerda la ruta:
$ sudo mkdir /mnt/tmp

6.-Monta el nuevo disco:
$ sudo /usr/share/google/safe_format_and_mount -m "mkfs.ext4 -F" /dev/sdb /mnt/tmp

7.-Este paso es el mas importante, con el comando "gcimagebundle" se creará un archivo .tar del disco duro montado, y lo pondrá en la carpeta temporal que se creo antes, por eso es importante crear el disco duro temporal con las imagen del disco a resguardar.
$ sudo gcimagebundle \-d /dev/sda -o /mnt/tmp/ --log_file=/tmp/abc.log
nota: el tiempo de ejecución de este proceso, dependerá del tamaño de tu disco y del tipo de VM que estés utilizando.

8.-Cuando el proceso termine, busca un archivo con un nombre conformado de un gran cadena de números hexadecimales  con extensión .tar.gz
/mnt/tmp/HEX-NUMERO.image.tar.gz
9.-Por ultimo copia ese archivo a tu maquina local con el comando de copia que puse anteriormente (Copiar archivos de pc local a VM en Google Compute Engine) y respalda el archivo de la manera que mas te agrade, en mi caso son  dvds




miércoles, 30 de septiembre de 2015

Krita, la alternativa, de la alternativa.

Krita, es un software de edición, pintura e ilustración digital distribuido bajo la licencia GNU GLP.

Las característica de Krita son orientadas a la creación de dibujo digital, mas que las funciones de edición de fotográfica, sin embargo soporta funciones de edición de mapa de bits e ilustración vectorial.

La popularidad de Krita va en aumento llegando al punto que el departamento de Arte y Tecnología de la Imagen (ATI) de la Universidad de París sustituyo el uso de Photoshop por el de Krita (https://krita.org/item/goodbye-photoshop-and-hello-krita-at-university-paris-8/)

Lo restante por mencionar seria que le des una oportunidad a Krita y tu decidas si es la alternativa que estabas buscando. 

Descarga Aquí 

martes, 29 de septiembre de 2015

Copiar archivos de pc local a VM en Google Compute Engine

Si tienes una VM en GCE (Google Compute Engine) y necesitas copiar archivos de tu VM a tu pc local o quieres enviar archivos de tu pc local a tu VM hay un comando que te puede  funcionar

Los ejemplos que se mostraran son en PC con Linux a un VM con Linux (Sí, trabajo con Linux...)

PC a VM

gcloud compute copy-files [/archivo/a/copiar] [Nombre de tu VM]:[/directorio/destino] --zone "[la zona donde reside tu VM]"

VM a PC

gcloud compute copy-files [Nombre de tu VM ]:[/archivo/a/copiar] --zone "[la zona donde reside tu VM]" [/directorio/destino]


Importante:

Para hacer la copia de archivos debes de estar "logueado" en gcloud

gcloud auth loggin  

y tener seleccionado el proyecto donde se encuentra tu VM

gcloud config set [projectnombre-de-tú-proyecto] 
 

lunes, 28 de septiembre de 2015

Conectar Google Cloud SQL a un Cliente MySQL



Antes que anda debes de tener una cuenta de Google (gmail) y activar tus 60 días gratis de prueba dentro de:


Con tu cuenta gratis podrás acceder  durante 60 días a casi todos los componente de Google Cloud Platform.(No tendrás acceso a componente premium).


Aquí comienza tu travesía para lograr conectar Cloud SQL en la nube a tu maquina a tú lado.

1.- crea un "Instancia" de Cloud SQL recuerda usar nombres con minúsculas, sin caracteres especiales y separados por ' - ' (no emoticon)

2.-Accede a tu instancia creada para ver las opciones que ofrece CloudSQL

3.-Dentro de "Base de datos" podrás crear tu BD que después podrás manipular con un cliente de MySQL



4.-Ahora en control de acceso crea un usuario el cual podrá acceder desde el cliente. 
5.- Ahora debes autorizar la aplicaciones o IPs las cuales tendrán acceso a tu base de datos. esto es parte de la seguridad de Google  la cual puedes amar u odiar (en mi caso la odie un poquito).

  • Redes permitidas: son rangos de IPs o IPs que sabes que tendrán acceso a tu base de datos para el caso de este ejemplo debes de usar la ip que tienes asignada  para saberla entra a la pagina https://www.whatismyip.com/es/ y así podrás garantizar el acceso de tu cliente local.
 
  • Aplicaciones de App Engine: aquí podrás dar acceso a las aplicación de que tengas hospedadas en App Engine y que deban de utilizar una base de datos

6.- Obtener un IPv4, Cloud SQL otorga por default una IPv6 para poder conectar o manipular la base de datos es mas fácil utilizar un IPv4, lo lamentable es que para obtener un IPv4 Cloud SQL te la otorgara con un costo de 0.01 cents por cada hora que no se use !! para este ejemplo y como tenemos nuestra prueba gratis utilizaremos la IPv4





7.- Ya con usuario y control de accesos es momento de conectar el cliente a la nube, para este ejemplo utilizare el cliente de MySQL Workbench.

8.- Ya instalado Mysql WorkBench procedemos a la conexión llenamos todos los campos necesarios en el cliente para conectarnos y hacemos el teste de conexión



 9.- Hacemos la conexión

10.- Ahora si tendremos  acceso a nuestra base de datos en la nube gracias a Cloud SQL y a Mysql WorkBench

Google SQL Cloud







Google Cloud SQL es un manejador de base de datos MySQL (maɪˌɛskjuːˈɛl/ [mai es-quiu-el]) que recide en la infraestructura de Google Cloud.

Este manejador tiene todas las capacidades de MySQL con algunas funciones adicionales, pero también  con algunas funciones no soportadas, GCSQL es fácil de usar (una vez entendido algunos funcionamientos), no requiere instalaciones de software adicionales y es una excelente opción para para aplicaciones de tamaño bajo a medio.

Se puede acceder a GCSQL a travez de:
  • MySQL Client
  • Aplicaciones de terceros como SQL Workbench o Toad for MySQL 
  • Aplicaciones externas usando  MySQL database drivers 
  • Aplicaciones Engine Java
  • Aplicaciones Engine Pytho
  • Google Apps Script 
 Lo importante que se debe mencionar también es que al ser un servicio de Google genera un costo, de esos costos que son por .00xx centavos pero que a la larga puede llegar a un monto considerable.

Para mas información consulte https://cloud.google.com/sql/docs/introduction


 

jueves, 17 de septiembre de 2015

JAVA StringUtils

En mi trabajo, utilizo java para la cuestión de programación y no conocía la clase de StringUtils la cual me ha ayudado en algunos aspectos básicos del manejo de String (cadenas) en java.

Bueno aquí paso a los ejemplos y uso de StringUtils:


StringUtils.isEmpty()
Esta función booleana checa si la cadena es vacia ("") o nula (null).
 
StringUtils.isEmpty(null)        =   true
StringUtils.isEmpty("")            =  true
StringUtils.isEmpty(" ")           =  false
StringUtils.isEmpty("bob")     =  false
StringUtils.isEmpty("  bob  ") =  false 
 
Esta función tiene su contraparte que es: 
StringUtils.isNotEmpty() 

StringUtils.isNotEmpty(null)         = false

StringUtils.isNotEmpty("")             = false
StringUtils.isNotEmpty(" ")            = true
StringUtils.isNotEmpty("bob")      = true
StringUtils.isNotEmpty("  bob  ")  = true
 
Si es requerido también existe la funcion isBlank la cual da "más " mas precisión al momento de 
revisar si una cadena es vacía o no.
  
StringUtils.isBlank() 
Esta función booleana checa si la cadena es vacia ("")("    ") o nula (null).
 
StringUtils.isBlank(null)         = true
StringUtils.isBlank("")            = true
StringUtils.isBlank(" ")           = true (toma como vacío la cadana sin nada en su interior)
StringUtils.isBlank("bob")     = false
StringUtils.isBlank("  bob  ") = false

Esta función también tiene su contraparte que es: 
StringUtils.isNotBlank() 
 
StringUtils.isNotBlank(null)         = false
StringUtils.isNotBlank("")            = false
StringUtils.isNotBlank(" ")           = false
StringUtils.isNotBlank("bob")     = true
StringUtils.isNotBlank("  bob  ") = true 


Hay muchísimo mas funciones que se pueden utilizar y son muy utiles. aqui les dejo la documentacion
http://commons.apache.org/proper/commons-lang/javadocs/api-3.1/org/apache/commons/lang3/StringUtils.html

miércoles, 29 de julio de 2015

Comandos Linux útiles

Aquí les pondré algunos comandos útiles de linux.

1.-  Historial de comandos
$ history
Con este comando podrás ver el historial de los comandos que has utilizado, si esto se combina con el comando "grep" podrás hacer una búsqueda de algún comando que no recuerdes como utilizarlo.
$ history | grep "lo-que-buscas"

2.-  ¿Que pasa en mi linux ?

Para darte una idea de que se esta ejecutando, procesos, demonios, como esta tu memoria (ram & swap), ver los logs, etc. puedes usar el siguiente comando:
$ top
Pero la verdad es que top no se ve muy bonito, si quieres agregarle funcionalidades hay que instalar y ejecutar
$ sudo apt-get install htop
$ htop

 con htop tenemos una mejor vista de los procesos y opciones de teclas para mejorar la gestión.

3.- Saber que paquetes y dependencias en especial tienes

$ dpkg -l | grep "lo que buscas"
con este comando puedes buscar paquetes y las dependencias que tiene dicho paquete.

4.- Algo diferente ...

Con el comando
$ sudo apt-get install cowsay
$ cowsay  hola
 ______
< hola >
 ------
        \   ^__^
         \  (oo)\_______
            (__)\              )\/\
                ||---------w |
                ||               ||

Obtendremos un "vaca" que nos dirá lo que queramos, este comando se puede combinar con otros para obtener otros tipos de resultado utilizando los pipes " | "
$ history | grep "cowsay" | cowsay

lunes, 27 de julio de 2015

Git, eliminar un branch (RAMA)

Cuando ya hayas terminado de tus labores en un "branch (rama)" y tu código ya este como el "master" o al dar el comando
git branch 
Te salen muchos "branchs (ramas)"  que ya no utilizas y quieres eliminarlos, pues con el comando 
git fetch -p    
Eliminaras todos esos "branchs (ramas) que ya no requieras, pero siempre hay uno que se resiste, bueno al menos en mi caso, para poder eliminar esos "branchs"(ramas) persistentes se utiliza el comando  
git branch -d nombre-del-branch

si el branch (rama) se resiste a ser eliminado y tú de verdad quieres eliminarlo a como de lugar  utiliza:
git branch -D nombre-del-branch

Y si quieres eliminar un branch(rama) remoto (en repositorio github, bitbucket etc) el comando el el siguiente
git push origin --delete nombre-del-branch-remoto

Recuerda siempre tener precaución y estar 101% seguro de querer eliminar el branch 

viernes, 24 de julio de 2015

Instalar Koha en un servidor Debina 7.8

En esta entrada pondré el manual para instalar el sistema de gestión bibliotecaria Koha y no morir en el intento.

Antes que nada este manual de instalación esta creado para ser usado en un servidor Debian versión 7.8, es importante mencionar que para esta instalacion se debe de tener acceso a root

1.- Se añaden las claves GPG
wget -q -O- http://debian.koha-community.org/koha/gpg.asc | sudo apt-key add -
2.- Elegimos la version de Koha que se instalara, en este caso es la estable
echo 'deb http://debian.koha-community.org/koha stable main' | sudo tee /etc/apt/sources.list.d/koha.list
3.- Hacer un update para verificar lo nuevo en los repositorios
sudo apt-get update
4.- Ahora instalamos Koha
sudo apt-get install koha-common
5.- instalamos SQL
sudo apt-get install mysql-server
6.- Editar el archivo /etc/koha/koha-sites.conf
     -Esto es para configurar si se cuenta con un dominio para Koha, de lo contrario se deberán quedar "" vacíos los espacios para el DNS

7.- Se deben de Reiniciar  los demonios de apache
 $ sudo a2enmod rewrite
 $ sudo a2enmod cgi
 $ sudo service apache2 restart
8.- Se remueven los otros sitios de apache para que solo funcionen los de Koha
sudo a2dissite 000-default default default-ssl
9.- Reiniciar apache
$ sudo service apache2 restart
10.- Ahora se deben de crear los esquemas para el uso de Koha, comenzando con la base de datos
sudo koha-create --create-db NombreDeSuBiblioteca
11.- Se edita el archivo  /etc/apache2/ports.conf 
      Aquí se agrega la linea listen 8080 abajo de listen 80
      El puerto 8080 es para la sección administrativa de koha

12.- Ahora con todas las configuraciones hechas, debemos obtener la clave de acceso para la parte administrativa de Koha
sudo xmlstarlet sel -t -v 'yazgfs/config/pass' /etc/koha/sites/[NombreDeSuBiblioteca]/koha-conf.xml
     Con el paso anterior se obtiene la contraseña de acceso a koha, para saber su usuario simplemente agregué koha-NombreDeSuBiblioteca

13.- Si se quiere cambiar el lenguaje a Koha , primero se buscan los idiomas disponibles :

sudo koha-translate --list --available
Después se instala el lenguaje deseado:
sudo koha-translate --install codigo-del-lenguaje

14.- Si todo salio bien ya estará instalado Koha, solo faltaría configurar el inicio para esto es necesario acceder al servicio desde un navegador

Si usaste una dominio propio, acceder al domino, de lo contrario acceder a la ip
  
15.- Solo restaría configurar Koha a las especificaciones de su biblioteca 

Con estos 15 "sencillos" paso (a mi recordar) podrás tener un servidor Koha en linea y listo para funcionar.



jueves, 23 de julio de 2015

Google cloud y App Engine SDK

Bueno, para usar las herramientas de Google como Compute Engine y App Engine, se deben de instalar los SDKs correspondientes.

Aquí los comandos correspondientes para instalarlo en linux, pero también pongo el enlace para hacer las instalaciones en Windows y Mac.

Instalar Cloud SDK

Google Cloud SDK contiene las librerias y herramientas necesarias para el uso de App Engine, Compute Engine, Cloud Storage, BigQuery, Cloud SQL y Cloud DNS.

Descargar e instalar Google Cloud SDK.

curl https://sdk.cloud.google.com | bash

Al terminar la instalación se debe de reiniciar el shell de linux:
exec -l $SHELL
Para el uso de las herramientas de gcloud se debe uno de autentificar/autenticar con el siguiente comando:

gcloud auth login

Enlace y otras instalaciones Aquí (https://cloud.google.com/sdk/)


Google App Engine SDK

Para usar este SDK es necesario descargar el correspondiente SDK que usara nuestra aplicación (Página.appspot.com), en este caso son las instrucciones para usar una aplicación PHP.

Primero se debe descargar el SDK

php : google_appengine_1.9.24

Se descomprime: 
unzip google_appengine_1.9.24.zip 
Se agrega al PATH para su ejecución:
export PATH=$PATH:/path/donde-esta/google_appengine/ 
    nota: Esto solo agrega al PATH hasta el reinicio del Sistema Operativo

 Enlace de instalación de otros SDK Aquí (https://cloud.google.com/appengine/downloads)

¿Que es Google App Engine y Compute Engine?


Hasta hace unos meses no tenia idea de lo que era Google App Engine y Compute Engine, gracias a mi trabajo tuve la oportunidad de trabajar con ellos y descubrir las ventajas que estos servicios te otorgan, cabe mencionar que estos servicios son de pago pero ofrecen versatilidad de precios y hasta en unos caso el uso gratis sin rebasar cierta cuota. 

App Engine. 

Google App Engine es un servicio de alojamiento web que presta Google, este servicio permite ejecutar aplicaciones sobre la infraestructura de Google proporcionado el siguiente dominio, miproyecto.appspot.com, por el momento las cuentas gratuitas tienen un límite de 500 megabyte de almacenamiento permanente y la suficiente cantidad de ancho de banda y CPU para cinco millones de visitas mensuales

Actualmente las aplicaciones Google App Engine se implementan mediante los lenguajes de programación Python, Java, Go y PHP.
 via wikipedia
 
Compute Engine 

Google Compute Engine (GCE) permite a los usuarios crear máquinas virtuales (vm) hospedadas en los servidores de Google, es importante mencionar que este servicio es de paga desde el momento de la creación de la maquina virtual, se cobran por minuto de uso de la VM costando desde los $0.006 dls por una VM michro, hasta los $1.216 dls por una VM con 32 CPUs y 28.8 gb de RAM.

Estas VMs pueden crearse con sistemas operativos de Linux como Ubuntu y Debian Server pero tambien se pueden crear VM con otras distros de linux, Windows Server o con una VM que ya en Virtual Box.

Enlaces :
Ejemplo de pagina con Appengine: ugd.edu.mx 



miércoles, 22 de julio de 2015

Usar Maven3 con un proxy - netbeans

Maven es sensible a uso de proxys para ello hay que hacer configuraciones para poder utilizar los repositorios.

En mi caso yo modifique los siguientes archivos (ubuntu 14.04.2 con netbeans)

/home/(tu usuario)/netbeans-8.0.2/java/maven/conf/settings.xml

/usr/share/maven3/conf/settings.xml

En ambos archivos agregé las configuraciones de mi proxy en la etiqueta de xml llamada <proxies> (La cual hay que descomentar)

<proxy>
      <id>optional</id>
      <active>true</active>
      <protocol>http</protocol>
      <username>proxyuser</username>
      <password>proxypass</password>
      <host>proxy.host.net</host>
      <port>80</port>
      <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
</proxy>


Con esto podrás usar Maven con un proxy o al menos a mi me funciona =)

Instalar Maven3 en Ubuntu 14.04.2

Aquí el pequeño manual que encontré vía stackoverflow:


Agregar fuentes al source.list

Entorno gráfico:
sudo -H gedit /etc/apt/sources.list

Agregamos las siguientes fuentes:

deb http://ppa.launchpad.net/natecarlson/maven3/ubuntu precise main
deb-src http://ppa.launchpad.net/natecarlson/maven3/ubuntu precise main


Instalar maven3 :


1°:
sudo apt-add-repository -rm ppa:natecarlson/maven3
2°:
sudo apt-get update && sudo apt-get install maven3

Hacer un link simbolico
sudo -ln -s /usr/share/maven3/bin/mvn /usr/bin/mvm

Con los paso anteriores debería estar maven3 correctamente instalado, para corroborarlo se puede usar el comando:
mvn -v
      salida : Apache Maven 3.2.1 (ea8b....


Con eso ya se tiene instalado Maven3 en Ubuntu 14.04.2







martes, 21 de julio de 2015

Git y comando básicos

¿Qúe es Git?

Según Wikipedia:
  1. "Git (pronunciado "guit" ) es un software de control de versiones diseñado por Linus Torvalds, pensando en la eficiencia y la confiabilidad del mantenimiento de versiones de aplicaciones cuando éstas tienen un gran número de archivos de código fuente."

Instalar git  para windows aquí

Inatalar en Linux:
apt-get install git
Otras manera de instalar aquí


Comando basicos de git (Con un repositorio remoto creado en github, bitbucket, etc):
git help comando ó git comando --help
Clonar de repositorio.
git clone url
Cambiar a un branch. 
git fetch && git checkout "nombre del branch o master"

Hacer le comit. 
git commit --all

Descargar los cambios del repositorio. 
git pull nombre del branch o "master"
Subir los cambios al repositorio. 
git push origin "nombre del branch"

Agregar archivos nuevos al arbol del git 
git add "ruta del nuevo archivo dentro del arbol"

Ver los branch
git branch

Borrar branch
git branch -d "nombre del branch"
git fetch -p    < Esto purga todo los branch que ya no existen 




Reiniciar Shell linux

Este comando sirve para reiniciar el shell de linux:

exec -l $SHELL

comando cortesía de Google Cloud Platform