Contenido

Github desde windows (git con cygwin)

Contenido

Git con cygwin:

/wp-content/uploads/2012/04/Octocat.png

Git es un software de control de versiones distribuido. Aunque es más sencillo instalarlo en Linux, también lo podemos instalar y configurar en Windows. Aunque los sistemas de control de versiones se utilizan principalmente para proyectos colaborativos, también lo podemos utilizar para tener control de cambios sobre nuestros propio software, aunque seamos el único desarrollador del mismo.

Github es una plataforma de desarrollo basada en git, que podemos utilizar para tener nuestros proyectos online y para compartirlos con otros desarrolladores. Github nos proporciona un repositorio remoto que podemos tener sincronizado con nuestro repositorio local; si trabajamos con varios desarrolladores cada uno puede tener su propio repositorio local y utilizar github como repositorio servidor.

Por último, Cygwin nos ofrece una colección de herramientas Unix desde la línea de comandos de Windows.

Vamos a ver cómo tener cygwin y git instalado en windows y configurado para poder subir nuestros proyectos a github.

Para la instalación en Windows de git se pueden utilizar tres métodos:

  1. instalación de mysgit
  2. git desde cygwin
  3. instalar mysgit y usarlo desde cygwin

Vamos a utilizar la segunda opción para utilizar toda la potencia de cygwin, aunque es algo más sencilla la primera. La tercera opción se utilizaría en el caso que ya tuviéramos instalado git y quisiéramos usarlo desde una instalación posterior de cygwin.

Los pasos para tener git funcionando en local y en remoto a github son los siguientes:

Instalación de cygwin con git

Sólo tenemos que descargar el ejecutable setup.exe  y ejecutarlo.

Debemos elegir en la instalación los paquetes de git (obvio) y de ssh (necesario para configurar el acceso a github), además de elegir todos los paquetes que nos indique como necesarios para satisfacer dependencias.

Con esto ya tenemos git instalado y podemos utilizarlo en nuestros proyectos.

Configuración de github como repositorio de git

Los siguientes pasos están documentados en Github

  1. El primer paso será crearnos una cuenta en github si todavía no la tenemos desde https://github.com/signup/free
  2. Después tenemos que crear las claves ssh que utilizaremos para la conexión segura con github, para ello abrimos un terminal de cygwin y escribimos: <p
$ ssh-keygen -t rsa -C "tu_email"

donde <tu_email> debe ser el mismo correo electrónico de la cuenta de github.

Con esto generamos el par de claves claves rsa; nos pedirá una contraseña (se puede dejar en blanco), cada vez que hagamos nos conectemos al repositorio remoto de github nos pedirá esta clave.

  • Ahora se tiene que añadir la clave pública que se ha generado a nuestra cuenta de github. Para ello hacemos cat ~/.ssh/id_rsa.pub y copiamos la clave (sin añadir ni espacios ni líneas en blanco y pegamos esa clave en nuestra cuenta de github, en el campo key (en el title no hay que poner nada).

  • Ahora tenemos que configurar nombre y correo electrónico de git para conectarnos a github:

    $ git config –global user.name “tu_nombre”<br /> $ git config –global user.email “tu_email”

     donde tenemos que utilizar los mismos de la cuenta de github
    
    • Añadiendo el token de la API de github. Para poder utilizar la API de github tenemos que añadir su token de la siguiente forma:

      $ git config –global github.user tu_username<br /> $ git config –global github.token tu_token

      donde tu_username es el nombre de usuario de github, y tu_token se puede ver en Account Settings -> API token .

    Creando el repositorio local

    Hacemos lo siguiente:

    1. Ir al directorio donde tenemos nuestro proyecto (o crearlo si el proyecto está vacío) y  hacer
     <code lang="bash">$ git init</code>
    
     que nos creará el repositorio local
    
    1. Para incluir todos los ficheros del directorio en el repositorio y hacer un primer commit:
     <code lang="bash">$ git commit -a -m 'commit inicial'</code>
    
     (si el directorio estuviera vacío previamente creamos algún fichero)
    

    Creando el repositorio remoto en Github y conectándonos a él

    Para crear el repositorio en Github sólo tenemos que ir a New Repository y elegir un nombre para el repositorio y si queremos que sea público o privado; sólo podemos escoger privado si tenemos una cuenta de pago.

    Para utlizar este repositorio remoto, tenemos que hacer lo siguiente:

    1. Desde el directorio de nuestro proyecto y una vez hecho el commit en local, nos conectamos al repositorio remoto:
     <code lang="bash">$ git remote add origin git@github.com:tu_username/tu_repositorio.git</code>
    
     donde tu\_username es tu nombre de usuario en Github y tu\_repositorio el nombre del repositorio creado en Github.
    
     Si pusimos contraseña a la clave rsa creada anteriormente aquí nos la pedirá (y cada vez que nos conectemos al repositorio).
    
    1. Subimos los cambios al repositorio:
     <code lang="bash">$ git push -u origin master</code>
    

    Y ¡ya hemos terminado!

    Ahora ya tenemos configurados los repositorios local y remoto y los podemos utilizar cuando queramos.