Primeros pasos con github: subir un proyecto al repositorio.

10
188374

Primeros pasos con github: subir un proyecto al repositorio.

0. Índice de contenidos.


1. Introducción

Github es un hosting para git,
gratuito para proyectos opensource. Git es un sistema de control de versiones distribuido, para más info leed este
tutorial de Alejandro.

En este vamos a ver cómo configurarnos el entorno local para trabajar contra github y cómo realizar una primera subida de
un proyecto al repositorio.


2. Entorno.

El tutorial está escrito usando el siguiente entorno:

  • Hardware: Portátil MacBook Pro 17′ (2.93 GHz Intel Core 2 Duo, 4GB DDR3 SDRAM).
  • Sistema Operativo: Mac OS X Snow Leopard 10.6.7
  • Git 1.7.4.4.


3. Preparar el entorno de git

Lo primero, siguiendo el tutorial que os he comentado de Alejandro, es instalarnos en local git y configurarlo.

Para la instalación, en función del sistema operativo, tendremos que realizar más o menos operaciones, el objetivo no es compilar nosotros el código
con lo que nos descargaremos una empaquetación del mismo lista para instalar, para Mac,
de la siguiente ubicación: http://git-scm.com/

La instalación es simple, tras la misma comprobaremos la versión instalada ejecutando por línea de comandos:

	git --version

Lo siguiente es configurar el usuario, email y los decoradores de la salida por consola, para ello seguiremos los pasos aquí indicados
configuración de git.

Añadiremos a la configuración anterior la creación de un fichero de exclusiones. Es típico que, por sistema operativo, por el IDE o por el sistema de
gestión del ciclo de vida del proyecto, se generen en el directorio de nuestra aplicación ficheros que no queremos que formen parte del repositorio.
Para ello podemos tener una configuración local por proyecto o global para todos los proyectos.

Nostoros vamos a configurar un fichero de exclusiones particular por proyecto, de modo que cuando alguien se incorpore al equipo no tenga que configurar nada
al respecto y no haya posibilidad de subidas al repositorio de ficheros de configuración locales.

Para ello crearemos un fichero .gitignore en el directorio ráiz del proyecto con el siguiente contenido:

# Ignores
\.DS_Store
\.classpath
\.project
\.settings
\.metadata/
Servers/
target/

Son las exclusiones típicas si trabajamos en Mac, con Eclipse y Maven.

El resultado de todas estas configuraciones debería ser un fichero .gitconfig en nuestro directorio de usuario con el siguiente contenido:

[user]
	name = Jose Manuel Sánchez Suárez
	email = jmsanchez@autentia.com
[color]
	status = auto
	branch = auto
	diff = auto
	interactive = auto


4. Preparar el entorno de GitHub.

GitHub usa una clave ssh para establecer una conexión segura entre nosotros y el servidor de git. Si no disponemos de una debemos generarla y añadir la
misma a nuestro perfil de GitHub.

Para generar una nueva clave, desde el terminal debemos ejecutar los siguientes comandos:

ssh-keygen -t rsa -C "your_email@yourcompany.com"

Nos solicitará una ubicación para la clave, por defecto: /Users/your_user_directory/.ssh/id_rsa y una «frase de paso» como contraseña.

Al finalizar deberíamos tener algo como esto:

Your identification has been saved in /Users/your_user_directory/.ssh/id_rsa.
Your public key has been saved in /Users/your_user_directory/.ssh/id_rsa.pub.
The key fingerprint is:
01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@yourcompany.com
The key's randomart image is:
+--[ RSA 2048]----+
|     .+   +      |
|       = o O .   |
|        = * *    |
|       o = +     |
|      o S .      |
|     o o =       |
|      o . E      |
|                 |
|                 |
+-----------------+

Ahora dentro del sitio de GitHub en «Account Settings» > «SSH Public Keys» > «Add another public key», denemos añadir el
contenido del fichero id_rsa.pub generado en /Users/your_user_directory/.ssh/

Para comprobar la configuración debemos ejecutar lo siguiente:

ssh git@github.com

La salida debería ser algo como esto:

The authenticity of host 'github.com (207.97.227.239)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?

Escribimos yes y pulsando intro tendremos la siguiente salida:

PTY allocation request failed on channel 0
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
Connection to github.com closed.


5. Subir el proyecto.

Una vez tenemos el entorno montado ya podemos realizar la subida del pryecto para compartilo al resto del equipo.

Al tratarse de un proyecto nuevo lo primero es posicionarnos a nivel de la carpeta padre del proyecto (allí donde se encuentra, por ejemplo,
el directorio .metadata) y ejecutar:

	git init

Con ello crearemos el repositorio de git, que no es más que el directorio .git en la misma ubicación (si tuvieramos que volver a crearlo basta con borrarlo).

A continuación, añadimos todos los fuentes al repositorio, aquí entrarán en juego las exclusiones, con el siguiente comando:

	git add *

Para revisar lo añadido al repositorio podemos ejecutar el siguiente comando:

	git status

Todo lo que devuelva el listado será lo que se suba con el proyecto.

Solo queda hacer un commit, asignar el repositorio remoto y hacer un push

  
  git commit -m 'Subo la estructura del proyecto al repositorio de GitHub'
  git remote add origin git@github.com:my_company/my_project.git
  git push -u origin master

Ahora en el site del proyecto en GitHub tendremos el push:

Con ello ya tenemos el proyecto compartido.


6. Referencias.


7. Conclusiones.

Ahora solo queda desarrollar las historias de usuario… ;).

Un saludo.

Jose

jmsanchez@autentia.com

10 COMENTARIOS

  1. que bien, estaba buscando info sobre como compartir proyecto de software libre, de aquí a mañana voy a comentar como me fue siguiendo estos pasos.

    un arbazo!

    pd: aguante la libre difusion de empresas!

  2. Hola! Había usado el git bash en pc pero ahora q estoy en mac tengo una duda, en git bash antes de crear el repositorio ponía la ruta de mi documento con c/users/documentos/…etc pero en la terminal de mac como se hace?

  3. Gracias!! Excelente el tutorial claro y sencillo. Saludos desde Perú!!

    Un aporte…
    Mensaje : «fatal: remote origin already exists.»

    Para ello borrar el «[remote «origin»]» del file: .git/config
    Comando : «git remote rm origin»

    saludos!!

DEJA UNA RESPUESTA

Por favor ingrese su comentario!

He leído y acepto la política de privacidad

Por favor ingrese su nombre aquí

Información básica acerca de la protección de datos

  • Responsable:
  • Finalidad:
  • Legitimación:
  • Destinatarios:
  • Derechos:
  • Más información: Puedes ampliar información acerca de la protección de datos en el siguiente enlace:política de privacidad