SlideShare uma empresa Scribd logo
1 de 20
GITGIT CourseCourse
Conceptos base de Git
GITGIT CourseCourse
Conceptos base de Git
●
Repositorios centralizados
●
SVN / TFS / etc
●
El 'working copy' solo tiene una instantánea del repositorio
en un momento dado.
●
Cualquier petición o cambio de información debe ser
trasladada al servidor para su resolución.
●
Diff
●
Compare
●
History
●
Branch
●
Merge
●
etc...
GITGIT CourseCourse
●
Repositorios distribuidos (GIT)
●
Repo local = repo remoto
● Contiene todos los elementos.
● Se añaden dos capas más a la estructura.
●
Repositorio local completo
● Stage / index
● Se admiten muchos repositorios remotos.
Son un elemento más del entorno distribuido.
Conceptos base de Git
GITGIT CourseCourse
●
HEAD
●
Es la forma que tiene GIT de referirse a la rama
(branch) + commit en el que estamos posicionados.
● En cualquier momento podemos situarnos en otro
commit (punto en el tiempo) de una rama
concreta.
Conceptos base de Git
GITGIT CourseCourse
Conceptos base de Git
●
Realidades
●
La curva de aprendizaje de GIT es pronunciada.
● Requiere entre uno y dos años (según @thinklikeagit).
● Lo mismo, se puede conseguir de varias formas distintas.
GITGIT CourseCourse
Características de Git
GITGIT CourseCourse
Características de Git
● Branching ● Los branches están a nuestro
servicio.
● Podemos realizar spikes dentro
del código de producción.
● Creamos un branch por cada
Tarea en nuestra historia, e
incluso por cada elemento dentro
de la tarea.
● El master solo recibirá código de
calidad y finalizado. Nunca verá
los pasos fallidos o las pruebas
realizadas.
GITGIT CourseCourse
● Branching
● Todo es local
● Prácticamente todo en GIT es
trabajo local.
– Ver un diff
– Historia de un fichero
– Hacer commit de cambios
– Mergear ramas
– Obtener revisiones de ficheros
– Cambiar de ramas/branches
● Solo hay 3 comandos principales
que hablan con un repositorio
central.
Características de Git
GITGIT CourseCourse
● Branching
● Todo es local
● Es rápido
● Es uno de los objetivos primarios
del equipo de desarrollo de GIT.
● Números con el repositorio de
Django
Características de Git
GITGIT CourseCourse
● Branching
● Todo es local
● Es rápido
● Es pequeño
● Git es realmente bueno
conservando espacio en disco.
● Comprime con Zlib.
● Todo en GIT son diff's y punteros.
● Un clone de Git es ligeramente
mayor que un Checkout de SVN
Características de Git
GITGIT CourseCourse
● Branching
● Todo es local
● Es rápido
● Es pequeño
● El index
● También llamado el Stage
● Ofrece una gran versatilidad y
control sobre lo que se desea
commitear.
● Podemos usarlo o no.
Características de Git
GITGIT CourseCourse
● Branching
● Todo es local
● Es rápido
● Es pequeño
● El index
● Es Distribuido
● Solo existen copias completas del
repositorio.
● No hay un punto único de fallo.
Características de Git
GITGIT CourseCourse
● Branching
● Todo es local
● Es rápido
● Es pequeño
● El index
● Es distribuido
● Distintos Workflows
● Admite practicamente cualquier
tipo de Workflow.
– Centralizados
– Administrados
● Un manager gestiona los
commits.
– Sub-Administrados
● SubManagers gestionan los
commits de los developers.
● Un manager gestiona los
commits de los
submanagers.
Características de Git
GITGIT CourseCourse
Manos a la obra
GITGIT CourseCourse
Manos a la obra
● Git Extensions
http://code.google.com/p/gitextensions/
● Git Source Control Provider
http://visualstudiogallery.msdn.microsoft.com
/63a7e40d-4d71-4fbb-a23b-d262124b8f4c
GITGIT CourseCourse
Manos a la obra
● Inicializar un repositorio
git init <directory>
● Añadir cambios del working dir al index
git add -all [<file>]
● Añadir cambios del index al repositorio
git commit -m “<message>”
git commit -a (realiza los dos pasos en uno solo)
● Ver estado/diferencias
git diff [--cached] / git status
GITGIT CourseCourse
Manos a la obra
● Ramas
– Una rama es una referencia a un commit.
– Forman parte del flujo normal de trabajo.
● Ver ramas
git branch / git branch -r / git branch -a
● Crear ramas
git branch <rama> / git checkout -b <rama>
● Renombrar y Borrar ramas
git branch -m <nombreActual> <nuevoNombre>
git branch -d/-D <rama>
GITGIT CourseCourse
Manos a la obra
● Fusionar distintas ramas.
– Git decide el algoritmo de fusión adecuado:
Fast-Forward merge / 3-Way Merge
– La fusión siempre se realiza a la rama actual.
git merge <rama>
git merge –no-ff <rama>
● Crear ramas
git branch <rama> / git checkout -b <rama>
● Renombrar y Borrar ramas
git branch -m <nombreActual> <nuevoNombre>
git branch -d/-D <rama>
GITGIT CourseCourse
Manos a la obra
● Añadir un repositorio remoto
git remote add <name> <url>
● Recoger cambios del remoto
git pull <name> [<rama>]
● Enviar a un remoto
git push <name> [<rama>]
git push –all <name> (Todas las ramas locales)
● Ver estado/diferencias
git diff [--cached] / git status
GITGIT CourseCourse
G R A C I A S

Mais conteúdo relacionado

Semelhante a Git windows

WorkShop: Introducción a GIT
WorkShop: Introducción a GITWorkShop: Introducción a GIT
WorkShop: Introducción a GITKeopx
 
Introducción a git
Introducción a gitIntroducción a git
Introducción a gitKeopx
 
GIT presentación de teoría y practica.pdf
GIT presentación de teoría y practica.pdfGIT presentación de teoría y practica.pdf
GIT presentación de teoría y practica.pdfMartinBonuccelli
 
Curso: Publicando mi proyecto web en Github
Curso: Publicando mi proyecto web en GithubCurso: Publicando mi proyecto web en Github
Curso: Publicando mi proyecto web en GithubCarlos Huamaní
 
Git: un enfoque práctico
Git: un enfoque prácticoGit: un enfoque práctico
Git: un enfoque prácticoPatxi Gortázar
 
Taller breve de introduccion a Git
Taller breve de introduccion a GitTaller breve de introduccion a Git
Taller breve de introduccion a GitMario IC
 
Git para no gitters
Git para no gittersGit para no gitters
Git para no gittersDiego Lopez
 
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDAD
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDADTodo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDAD
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDADDIEGOALBERTOENRIQUEZ4
 
Git para-principiantes
Git para-principiantesGit para-principiantes
Git para-principiantesnscoder_mad
 
Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando GitHugo Gilmar Erazo
 
Taller Git en la URJC
Taller Git en la URJC Taller Git en la URJC
Taller Git en la URJC sidelab
 
Git y drupal
Git y drupalGit y drupal
Git y drupalJuampy NR
 
Manual para usuarios de Git @patxiredes.pdf
Manual para usuarios de Git @patxiredes.pdfManual para usuarios de Git @patxiredes.pdf
Manual para usuarios de Git @patxiredes.pdfCarlosJurado61
 
Git & GitHub Part II
Git & GitHub Part IIGit & GitHub Part II
Git & GitHub Part IIMax Rodriguez
 

Semelhante a Git windows (20)

WorkShop: Introducción a GIT
WorkShop: Introducción a GITWorkShop: Introducción a GIT
WorkShop: Introducción a GIT
 
Introducción a git
Introducción a gitIntroducción a git
Introducción a git
 
GIT presentación de teoría y practica.pdf
GIT presentación de teoría y practica.pdfGIT presentación de teoría y practica.pdf
GIT presentación de teoría y practica.pdf
 
Curso: Publicando mi proyecto web en Github
Curso: Publicando mi proyecto web en GithubCurso: Publicando mi proyecto web en Github
Curso: Publicando mi proyecto web en Github
 
Git: un enfoque práctico
Git: un enfoque prácticoGit: un enfoque práctico
Git: un enfoque práctico
 
Taller breve de introduccion a Git
Taller breve de introduccion a GitTaller breve de introduccion a Git
Taller breve de introduccion a Git
 
Introducción a git
Introducción a gitIntroducción a git
Introducción a git
 
Introducción a Git
Introducción a GitIntroducción a Git
Introducción a Git
 
Git para no gitters
Git para no gittersGit para no gitters
Git para no gitters
 
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDAD
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDADTodo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDAD
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDAD
 
Git para-principiantes
Git para-principiantesGit para-principiantes
Git para-principiantes
 
Intro a GIT
Intro a GITIntro a GIT
Intro a GIT
 
Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando Git
 
Taller Git en la URJC
Taller Git en la URJC Taller Git en la URJC
Taller Git en la URJC
 
Replacing SVN with Git for managers
Replacing SVN with Git for managersReplacing SVN with Git for managers
Replacing SVN with Git for managers
 
Git y drupal
Git y drupalGit y drupal
Git y drupal
 
Un modelo exitoso para git
Un modelo exitoso para gitUn modelo exitoso para git
Un modelo exitoso para git
 
Manual para usuarios de Git @patxiredes.pdf
Manual para usuarios de Git @patxiredes.pdfManual para usuarios de Git @patxiredes.pdf
Manual para usuarios de Git @patxiredes.pdf
 
Git & GitHub Part II
Git & GitHub Part IIGit & GitHub Part II
Git & GitHub Part II
 
Git flow en gitlab
Git flow en gitlabGit flow en gitlab
Git flow en gitlab
 

Último

Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 

Último (12)

Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 

Git windows

  • 2. GITGIT CourseCourse Conceptos base de Git ● Repositorios centralizados ● SVN / TFS / etc ● El 'working copy' solo tiene una instantánea del repositorio en un momento dado. ● Cualquier petición o cambio de información debe ser trasladada al servidor para su resolución. ● Diff ● Compare ● History ● Branch ● Merge ● etc...
  • 3. GITGIT CourseCourse ● Repositorios distribuidos (GIT) ● Repo local = repo remoto ● Contiene todos los elementos. ● Se añaden dos capas más a la estructura. ● Repositorio local completo ● Stage / index ● Se admiten muchos repositorios remotos. Son un elemento más del entorno distribuido. Conceptos base de Git
  • 4. GITGIT CourseCourse ● HEAD ● Es la forma que tiene GIT de referirse a la rama (branch) + commit en el que estamos posicionados. ● En cualquier momento podemos situarnos en otro commit (punto en el tiempo) de una rama concreta. Conceptos base de Git
  • 5. GITGIT CourseCourse Conceptos base de Git ● Realidades ● La curva de aprendizaje de GIT es pronunciada. ● Requiere entre uno y dos años (según @thinklikeagit). ● Lo mismo, se puede conseguir de varias formas distintas.
  • 7. GITGIT CourseCourse Características de Git ● Branching ● Los branches están a nuestro servicio. ● Podemos realizar spikes dentro del código de producción. ● Creamos un branch por cada Tarea en nuestra historia, e incluso por cada elemento dentro de la tarea. ● El master solo recibirá código de calidad y finalizado. Nunca verá los pasos fallidos o las pruebas realizadas.
  • 8. GITGIT CourseCourse ● Branching ● Todo es local ● Prácticamente todo en GIT es trabajo local. – Ver un diff – Historia de un fichero – Hacer commit de cambios – Mergear ramas – Obtener revisiones de ficheros – Cambiar de ramas/branches ● Solo hay 3 comandos principales que hablan con un repositorio central. Características de Git
  • 9. GITGIT CourseCourse ● Branching ● Todo es local ● Es rápido ● Es uno de los objetivos primarios del equipo de desarrollo de GIT. ● Números con el repositorio de Django Características de Git
  • 10. GITGIT CourseCourse ● Branching ● Todo es local ● Es rápido ● Es pequeño ● Git es realmente bueno conservando espacio en disco. ● Comprime con Zlib. ● Todo en GIT son diff's y punteros. ● Un clone de Git es ligeramente mayor que un Checkout de SVN Características de Git
  • 11. GITGIT CourseCourse ● Branching ● Todo es local ● Es rápido ● Es pequeño ● El index ● También llamado el Stage ● Ofrece una gran versatilidad y control sobre lo que se desea commitear. ● Podemos usarlo o no. Características de Git
  • 12. GITGIT CourseCourse ● Branching ● Todo es local ● Es rápido ● Es pequeño ● El index ● Es Distribuido ● Solo existen copias completas del repositorio. ● No hay un punto único de fallo. Características de Git
  • 13. GITGIT CourseCourse ● Branching ● Todo es local ● Es rápido ● Es pequeño ● El index ● Es distribuido ● Distintos Workflows ● Admite practicamente cualquier tipo de Workflow. – Centralizados – Administrados ● Un manager gestiona los commits. – Sub-Administrados ● SubManagers gestionan los commits de los developers. ● Un manager gestiona los commits de los submanagers. Características de Git
  • 15. GITGIT CourseCourse Manos a la obra ● Git Extensions http://code.google.com/p/gitextensions/ ● Git Source Control Provider http://visualstudiogallery.msdn.microsoft.com /63a7e40d-4d71-4fbb-a23b-d262124b8f4c
  • 16. GITGIT CourseCourse Manos a la obra ● Inicializar un repositorio git init <directory> ● Añadir cambios del working dir al index git add -all [<file>] ● Añadir cambios del index al repositorio git commit -m “<message>” git commit -a (realiza los dos pasos en uno solo) ● Ver estado/diferencias git diff [--cached] / git status
  • 17. GITGIT CourseCourse Manos a la obra ● Ramas – Una rama es una referencia a un commit. – Forman parte del flujo normal de trabajo. ● Ver ramas git branch / git branch -r / git branch -a ● Crear ramas git branch <rama> / git checkout -b <rama> ● Renombrar y Borrar ramas git branch -m <nombreActual> <nuevoNombre> git branch -d/-D <rama>
  • 18. GITGIT CourseCourse Manos a la obra ● Fusionar distintas ramas. – Git decide el algoritmo de fusión adecuado: Fast-Forward merge / 3-Way Merge – La fusión siempre se realiza a la rama actual. git merge <rama> git merge –no-ff <rama> ● Crear ramas git branch <rama> / git checkout -b <rama> ● Renombrar y Borrar ramas git branch -m <nombreActual> <nuevoNombre> git branch -d/-D <rama>
  • 19. GITGIT CourseCourse Manos a la obra ● Añadir un repositorio remoto git remote add <name> <url> ● Recoger cambios del remoto git pull <name> [<rama>] ● Enviar a un remoto git push <name> [<rama>] git push –all <name> (Todas las ramas locales) ● Ver estado/diferencias git diff [--cached] / git status