Diferencia entre revisiones de «GitHub (Comandos)»
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. | ||
− | |||
− | + | = 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 = | |
=== 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). | ||
− | == | + | === 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 = | |
[https://github.com/ GitHub] | [https://github.com/ GitHub] |
Revisión de 19: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.
Contenido
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:
- 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
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.