Integrar Netbeans con Github.

Esta es la segunda parte de una serie de artículos sobre el sistema de control de versiones ‘GIT’, en el artículo anterior, vimos a detalle que es Git y que es Github, también mostramos cómo utilizar estas tecnologías para versionar un proyecto de programación.

Si no estás familiarizado con Git o con Github, puedes leer el artículo: Comenzando con Git y Github

Utilizar git dentro de Netbeans.

El IDE Netbeans, cuenta con soporte nativo para Git en todos los proyectos que manejamos dentro del IDE, una vez que comenzamos a versionar un proyecto, Netbeans nos mostrará cambios, eliminaciones y archivos o componentes agregados al proyecto. Para utilizar Git desde Netbeans podemos inicializar un repositorio en algún proyecto existente, o clonar un proyecto que ya está versionado desde Netbeans.

Inicializar un repositorio Git en un proyecto existente de Netbeans.

Si ya tenemos iniciado algún proyecto en Netbeans y queremos comenzar a versionarlo con Git, simplemente hacemos clic derecho sobre nuestro proyecto (En el explorador de proyectos), a continuación hacemos clic en Versioning – – > Inicialize Git Respository.

Inicializar git en proyecto existente

Luego de esto Netbeans nos pedirá que seleccionemos un directorio para el repositorio, por default nos pondrá el directorio en el que se almacena nuestro proyecto, preferentemente utilizaremos este directorio.

Elige carpeta para el repositorio

Listo, ahora nuestro proyecto sera versionado por Git aprovechando las herramientas de análisis de versiones que Netbeans provee.

Clonar un repositorio Github desde Netbeans.

Si antes de utilizar git dentro de Netbeans, ya tenemos algún proyecto alojado en Github o si queremos descargar el source de algun proyecto de código libre que utilice git para versionar su código podemos hacerlo sin problemas desde Netbeans. Para ello vamos a el menu: Team – – > Git – – > Clone…

Team >> Git >> Clone

A continuación Netbeans nos pedirá la URL del repositorio que pretendemos clonar, como ejemplo utilizaré la URL del proyecto LearningSpringIO para lo cual desde github abro el repositorio y copiamos la URL que aparece del lado derecho bajo la etiqueta: ‘https Clone url’ y la pegamos en la ventana correspondiente de Netbeans.

Https clone url

Además de pegar la dirección del repositorio, también introducimos nuestro usuario y contraseña de Github.

introducing clone url - user - password

Posteriormente hacemos clic en Next y a continuación elegimos la rama que deseamos clonar, en este caso la rama ‘master’ y hacemos clic en ‘Next’.

En la siguiente ventana, elegimos en que directorio deseamos que se clone el proyecto, así como el nombre que le daremos a nuestro repositorio (De preferencia dejar el que viene por default), activamos la casilla que dice: ‘Scan for netbeans projects after Clone’ y hacemos clic en ‘Finish’.

Save directory for repo

Con esto se habrá clonado el proyecto y podremos abrirlo desde Netbeans. 🙂

Subiendo nuevos archivos y cambios a nuestro repositorio Github.

Ahora supongamos que hemos pasado un tiempo trabajando en nuestro proyecto, hemos hecho algunos cambios, resuelto algunos bugs y agregado nuevos componentes. podremos ver que netbeans nos resalta los cambios en color azul y los nuevos archivos en verde en el explorador de proyectos. Para subir nuevos cambios seguiremos siempre dos sencillos pasos: Commit y Push. Para el primero, hacemos clic derecho sobre nuestro proyecto y elegimos Git – – > Commit, en la ventana que aparece podemos introducir algún comentario que distinguirá este commit de los demás. También podemos elegir los archivos nuevos o con modificaciones que se enviaran al repositorio. Por default todos los archivos nuevos o con modificaciones aparecen seleccionados.

Making commit

Hacemos clic en el botón ‘commit’ y listo, nuestros cambios se han enviado al repositorio local. Ahora para subirlos al repositorio Github, nuevamente hacemos clic con el botón secundario sobre nuestro proyecto y elegimos: ‘Git — > Remote – – > Push …’

En la ventana emergente debemos introducir el repositorio remoto, nuestro usuario y contraseña de Github, lo cual Netbeans ya hace por nosotros, así que en la mayoría de los casos, nos limitaremos a hacer clic en ‘Next’ .

Push to remote repository

En la siguiente ventana elegimos la rama o branch a la cual subiremos los cambios, y hacemos clic en ‘Next’ y después en ‘Finish’ si no hay ningún conflicto, nuestros cambios se subirán a Github y estarán disponibles para los demás miembros del proyecto.

Bajar cambios hechos por otros a nuestro repositorio local.

En caso de que alguien más haya subido cambios al repositorio Github o en cualquier caso queramos actualizar nuestro repositorio local con el de Github, debemos hacer un pull para lo cual nuevamente hacemos clic derecho sobre nuestro proyecto y elegimos: ‘Git – – > Remote – – > Pull …’ y se lanzará un ventana con los datos del repositorio y nuestro usuario – contraseña de github. Hacemos clic en Next , a continuación elegimos la rama que queremos revisar y hacemos clic en Finish. Con esto nuestro proyecto local se actualizara con los ultimos cambios encontrados en Github.

Si has leído hasta aquí, seguro eres excelente como persona autodidacta, lo cual es algo indispensable en el mundo del desarrollo de software. (- Te Felicito -).

Resumen.

En pocas palabras, la manipulación de un repositorio Git desde Netbeans se basa en lo siguiente:

1.1 Inicializar git en algún proyecto ya iniciado anteriormente en Netbeans o bien
1.2 Clonar un repositorio ya existente en Github desde Netbeans.

2.1 Subir nuevos archivos y modificaciones locales hacia el repositorio remoto o bien
2.2 Bajar los últimos cambios que hay en Github sobre nuestra copia del proyecto

Es estos dos puntos se podría resumir la funcionalidad básica de Git dentro de Netbeans, por supuesto podemos hacer muchas cosas más desde Netbeans con Git. 🙂

Referencias.

Si necesitas mas información sobre Git, Github y la integracion de Netbeans con Git puedes consultar los siguientes enlaces:

Articulo – Comenzando con Git y Github
Documentación oficial de Git
Documentación oficial de Github.
Using Git Support in Netbeans

No dudes en comentar cualquier pensamiento, idea, duda o reclamación que este artículo pueda generarte, compártelo con tu equipo para utilizar Github en algún proyecto o para alguna presentación académica o de trabajo.

Anuncios

9 comentarios sobre “Integrar Netbeans con Github.

  1. Buenas,
    Está bien, entiendo esto, pero no se si lo entiendo bien y me planteo algunas dudas.
    Sucede lo siguiente, imagina que somos varias personas programando en la oficina y que el fin de semana, se detecta un fallo en una web, y es por un script que se programó mal.
    Me avisa el cliente y saco mi portátil en la playa, estoy conectado con un lento 3G y ¿tengo que descargar yo las modificaciones antes de modificar nada?
    Si la respuesta es sí, ¿que ventaja hay con respecto a abrir el cliente ftp y darle a “descargar sólo ficheros modificados”?
    Gracias.

    1. Hola, si estás en una playa con un lento 3g que provee un humilde alcatel, basta con abrir tu cliente github (asumiendo que has llorado horas de trasnocho a punta de terminal) y te coloques unos buenos lentes de sol con una cerveza en mano mientras con la otra haces click en sincronizar, si ello es posible, selecciona tus cambios, dales commit, vuelves a sincronizar y todoo por debajo se ejecutan una serie de comandos que permiten fusionar y resolver conflictos, luego mira el horizonte y aun es de día, tan solo pasaron unos cuantos minutos. Mientras que con ftp te quedas como un mapache, peleando con tu mujer por no dedicarle tiempo.

  2. Disculpa, en realidad he venido hasta aquí por que usamos Netbeans en modo arcaico, cada uno de nosotros tiene sus proyectos en su ordenador, y luego están los ficheros en ftp de la web.
    No se a que sistema de control de versiones deberíamos cambiar.

    1. Que tal @dame
      Me parece que no puedes comparar Git con FTP, Dado que estan diseñados para propositos distintos, Git tiene soporte para sincronizar archivos a través de diferentes maquinas, visualizar quien modifico cada linea de código y en que momento lo hizo, avanzar y retroceder entre versiones diferentes del código. El proposito principal de utilizar Git es tener un sistema de control de versiones. Asi que en conclusión, No. No deberias utilizar Git para reemplazar a un servidor FTP, pero para tu proyecto web y para colaborar con tu equipo, definitivamente deberias utilizar Git o algún otro sistema de control de versiones. ;). Yo te recomiendo que lo utilices un fin de semana para ver como es el flujo de trabajo con esta herramienta.

  3. Pues no se hacerlo…
    A ver, el el portátil, el fin de semana, no tengo porqué tener los ficheros con todos los cambios.
    En el ordenador de mi compañero de la oficina están actualizados, y están también el el FTP de la web del cliente.
    Pero claro, hoy sábado por ejemplo, saco el portátil en casa y ¿cómo le indico a mi Netbeans que debe descargar o sugerirme descargar, los archivos que viernes modificó mi compañero?
    Y una vez hecho esto, ¿puede el lunes mi compañero tener sus ficheros actualizados con mis cambios del sábado?
    Gracias!!

    1. Hola @dame, efectivamente, tu compañero puede ver los cambios que tu hiciste, y tu los cambios que el haya hecho, cuando los hizo y puedes ver exactamente que lineas de código modifico que archivos agrego o que archivos modifico, asi como regresar a versiones anteriores del código :).

      Te recomiendo darte una vuelta por los siguientes sitios para familiarizarte con git y github:
      http://rogerdudler.github.io/git-guide/
      https://try.github.io/levels/1/challenges/1

      En especial por el segundo.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s