Diferencia entre revisiones de «GitHub (Comandos)»

De FdIwiki ELP
Saltar a: navegación, buscar
Línea 1: Línea 1:
 +
GitHub es el host de repositorios Git por excelencia, es el punto central de la colaboración de millones de desarrolladores y proyectos.
 +
Para  saber más puedes visitar link1 y link2 en este último tienes además un manual detallado disponible.
 +
Para más información sobre los comandos y sus opciones puedes introducir en la terminal man git-COMMAND en la terminal o git help COMMAND en el Git Bash para Windows.
  
== ¿Que es GitHub? ==
 
  
GitHub es una plataforma en la que al registrarse puedes añadir y modificar proyectos de software para tenerlos en la red y poder compartirlos con la comunidad. Utiliza el framework Ruby on Rails. También puede añadirse código de forma privada para hacer solamente copias de seguridad. Es el repositorio por excelencia.
+
= Obteniendo y creando proyectos =
  
== Comandos de Propósito general ==  
+
===init===
 +
Inicializa un directorio con o sin contenido como un nuevo repositorio Git.
 +
git init
 +
 
 +
===clone===
 +
Hace una copia local un repositorio para que puedas tener acceso a él, tanto visualizarlo como modificarlo.
 +
git clone [url]
 +
 
 +
 
 +
= Haciendo instantáneas =
 +
El staging area (área de preparación) es un archivo de tu directorio Git, en él se encuentra qué información estará en el próximo commit. A veces, nos referimos a él como el "índice".
 +
El flujo de trabajo básico en Git es algo como:
 +
# Modificas archivos en tu directorio de trabajo.
 +
# Añades instantáneas de lo archivos a tu área de preparación.
 +
# Haces commit, que toma los archivos como están en el área de preparación y guarda esa instantánea permanentemente en tu directorio Git.
 +
Una versión particular de un archivo puede estar commited (está en el repositorio), staged (está en el staging area pero no se le ha hecho commit) o modificada (tiene cambios pero no ha sido añadido al staging area).
 +
 
 +
 
 +
 
 +
= Comandos de Propósito general =
  
 
===clonar===
 
===clonar===
Línea 52: Línea 73:
 
''git pull'', automáticamente hace un merge
 
''git pull'', automáticamente hace un merge
 
 
== Ramas ==
+
= Ramas =
  
 
=== Crear ramas ===
 
=== Crear ramas ===
Línea 78: Línea 99:
 
Se trabajará siempre con ramas locales o específicas (no master ni develop).
 
Se trabajará siempre con ramas locales o específicas (no master ni develop).
  
== Forma de Trabajo con Ramas ==
+
=== Ver Trabajo Realizado ===
  
Se asignará una rama específica sobre la que trabaja una persona o grupo de personas. Se creará una rama local sobre la que realizar cambios y desde la rama específica, se realiza el merge con la rama local.
+
''git log'', información sobre los cambios realizados con commits
  
== Ver Trabajo Realizado ==
+
<!-- __________________________________________________________________________ -->
  
''git log'', información sobre los cambios realizados con commits
+
= Consejos a seguir =
 +
 
 +
== Forma de Trabajo con Ramas ==
 +
 
 +
Se asignará una rama específica sobre la que trabaja una persona o grupo de personas. Se creará una rama local sobre la que realizar cambios y desde la rama específica, se realiza el merge con la rama local.
  
 
== Realización de Commits ==
 
== Realización de Commits ==
Línea 97: Línea 122:
 
Ir repositorio -> comprobar estado repositorio (git status) -> actualizar datos (pull) -> crear nueva rama -> ir a la nueva rama -> realizar cambios ficheros -> añadirlos -> realizar el commit -> ir a la rama superior -> realizar merge -> realizar push->volver comprobar estado repositorio (git status).
 
Ir repositorio -> comprobar estado repositorio (git status) -> actualizar datos (pull) -> crear nueva rama -> ir a la nueva rama -> realizar cambios ficheros -> añadirlos -> realizar el commit -> ir a la rama superior -> realizar merge -> realizar push->volver comprobar estado repositorio (git status).
  
== Trabajo con Issues ==  
+
== Trabajo con Issues ==
  
 
* Mover todos los puntos a realizar a '''issues'''.  
 
* Mover todos los puntos a realizar a '''issues'''.  
Línea 105: Línea 130:
  
  
----
+
 
== Enlaces Externos ==
+
= Enlaces Externos =
 
[https://github.com/ GitHub]
 
[https://github.com/ GitHub]

Revisión de 18:19 22 ene 2016

GitHub es el host de repositorios Git por excelencia, es el punto central de la colaboración de millones de desarrolladores y proyectos. Para saber más puedes visitar link1 y link2 en este último tienes además un manual detallado disponible. Para más información sobre los comandos y sus opciones puedes introducir en la terminal man git-COMMAND en la terminal o git help COMMAND en el Git Bash para Windows.


Obteniendo y creando proyectos

init

Inicializa un directorio con o sin contenido como un nuevo repositorio Git.

git init 

clone

Hace una copia local un repositorio para que puedas tener acceso a él, tanto visualizarlo como modificarlo.

git clone [url]


Haciendo instantáneas

El staging area (área de preparación) es un archivo de tu directorio Git, en él se encuentra qué información estará en el próximo commit. A veces, nos referimos a él como el "índice". El flujo de trabajo básico en Git es algo como:

  1. Modificas archivos en tu directorio de trabajo.
  2. Añades instantáneas de lo archivos a tu área de preparación.
  3. Haces commit, que toma los archivos como están en el área de preparación y guarda esa instantánea permanentemente en tu directorio Git.

Una versión particular de un archivo puede estar commited (está en el repositorio), staged (está en el staging area pero no se le ha hecho commit) o modificada (tiene cambios pero no ha sido añadido al staging area).


Comandos de Propósito general

clonar

git clone git@github.com:GReaper/playground <folder_name> entrar con cd a la carpeta

add

git add <ficheros>

git add -u <ficheros>, los que ya se añadieron alguna vez se añaden

git add -i <ficheros>, añadir de forma interactiva

rm

git rm <ficheros>

git rm --cached <ficheros>, quitar un fichero del repositorio conservando la versión existente en el directorio de trabajo,

status

git status

git status –s, versión reducida

*Nota: indica el estado actual del repositorio, muy importante

commit

git commit

git commit -m "mensaje", permite escribir un mensaje para el commit

git commit -m "mensaje #<num_issue>", mensaje que hace referencia a un issue

git commit –a, hace commit a los archivos en los que ya se hizo un commit. Es quivalente a usar git add -u antes del commit

push

git push <remote> <branch>

ej: git push origin develop

pull

git pull, automáticamente hace un merge  

Ramas

Crear ramas

git branch <rama>

git checkout -b <rama>, crear y cambiarse a la rama

Cambiar de una rama a otra

git checkout <rama>

Subir ramas

git push –u origin rama_ejemplo

Mostrar Ramas

git branch

Merge

git merge <rama>, desde la rama padre

Se trabajará siempre con ramas locales o específicas (no master ni develop).

Ver Trabajo Realizado

git log, información sobre los cambios realizados con commits


Consejos a seguir

Forma de Trabajo con Ramas

Se asignará una rama específica sobre la que trabaja una persona o grupo de personas. Se creará una rama local sobre la que realizar cambios y desde la rama específica, se realiza el merge con la rama local.

Realización de Commits

  • Agrupar cambios similares en un commit, separar cambios diferentes en varios commits.
  • Evitar los supercommits.
  • Describir los cambios de cada commit correcta y completamente, descripción detallada del cambio.


Flujo de Realización de Trabajo

Ir repositorio -> comprobar estado repositorio (git status) -> actualizar datos (pull) -> crear nueva rama -> ir a la nueva rama -> realizar cambios ficheros -> añadirlos -> realizar el commit -> ir a la rama superior -> realizar merge -> realizar push->volver comprobar estado repositorio (git status).

Trabajo con Issues

  • Mover todos los puntos a realizar a issues.
  • Usar correctamente las etiquetas.
  • Realizar commits más frecuentes usando mensajes significativos.
  • Comentar todo lo importante en las issues que se estén realizando.


Enlaces Externos

GitHub