SlideShare a Scribd company logo
1 of 24
GIT / Manual Básico
Juan Minaya León
@minayaleon
Sistemas de Control de Versiones (SCV)
Versión
Control de Versiones
Sistema de Control de Versiones
Programas
Mecanismo de almacenamiento, Registro histórico, Cambios (CRUDR)
Informes
 Ejemplos: CVS, Subversion, SourceSafe
(MS), Git, Mercurial.
 Arquitectura: Centralizados (existe un repositorio
centralizado de todo el código, del cual es
responsable uno o más usuario), Distribuidos (Cada
usuario tiene su propio repositorio. Los distintos
repositorios pueden intercambiar y mezclar
revisiones entre ellos.
Sistemas de Control de Versiones (SCV)
Git
Linus Torvalds, 2005
 Velocidad
 Diseño Sencillo: (Git, Http/s, ssh).
 Fuerte apoyo al desarrollo no lineal (miles de
ramas paralelas)
 Completamente distribuido
 Capaz de manejar grandes proyectos como el
núcleo de Linux de manera eficiente (velocidad y
tamaño de los datos)
Git / Fundamentos
Almacenamientos de Datos
Subversion y CSV tienden a almacenar los datos como
cambios de cada archivo respecto a una versión base
Git / Fundamentos
Almacenamientos de Datos
Git modela sus datos como un conjunto de instantáneas. Cada
vez que confirmas un cambio, o guardas el estado de tu proyecto
en Git, él básicamente hace una foto del aspecto de todos tus
archivos en ese momento, y guarda una referencia a esa
instantánea
Git / Fundamentos
Casi cualquier operación es local
Verificación por suma de comprobación (checksum), sha-1
Git tiene integridad
Git / Estados
Git tiene tres estados en los que se pueden encontrar los archivos:
confirmado (committed), modificado (modified), y preparado (staged)
Git / Flujo
1. Traes el commit más reciente de los servidores locales
2. Modificas una serie de archivos en tu directorio de trabajo.
3. Preparas los archivos, añadiendo instantáneas de ellos a tu área de
preparación.
4. Confirmas los cambios, lo que toma los archivos tal y como están en
el área de preparación, y almacena esa instantánea de manera
permanente en tu directorio de Git.
Git en la práctica
Instalación / Windows
Git / Instalación
1. Ingresa a y descarga la versión más reciente:
https://code.google.com/p/msysgit/downloads/list?q=full+i
nstaller+official+git (para este documento se uso el 1.8.3)
2. Selecciona todos los componentes y presiona siguiente
hasta terminar (típico de windows )
3. Finalmente aparecerá un icono en tu escritorio
Git / Configuración Inicial
1. Abre el Git Bash
2. Para poder hacer commits Git debe saber quien eres (tu
email y nombre), si estas usando GitHub o Bitbucket usa los
accesos que creaste, si tienes Git en los servidores de tu
empresa solicita tus acceso al Sysadmin.
git config --global user.name "Juan Minaya"
git config --global user.email minayaleon@gmail.com
git config --global core.autocrlf false
La mayoría de los sistemas operativos Unix representan el final de cada línea con un salto de línea (LF) carácter. Sin
embargo, el sistema operativo Windows representa el final de la línea con un retorno de carro (CR) y un LF.
Git / Proyectos
1. Abre el Git Bash
2. Para poder hacer commits Git debe saber quien eres (tu
email y nombre), si estas usando GitHub o Bitbucket usa los
accesos que creaste, si tienes Git en los servidores de tu
empresa solicita tus acceso al Sysadmin.
git config --global user.name "Juan Minaya"
git config --global user.email minayaleon@gmail.com
git config --global core.autocrlf false
La mayoría de los sistemas operativos Unix representan el final de cada línea con un salto de línea (LF) carácter. Sin
embargo, el sistema operativo Windows representa el final de la línea con un retorno de carro (CR) y un LF.
Git / Proyectos
1. Navega hasta el directorio del proyecto
2. Inicializa un repositorio en un directorio existente (con un
proyecto existente o recién creado con Zrad), usa el
comando git init.
3. Para agregar todos los archivos usa el comando git add .
4. Agrega tu primer commit git commit -m "Primer Commit“
5. Para conectarte a un servidor remoto usa git remote add
git init
git add .
git commit -m "Primer Commit“
git remote add origin <servidor>
git push -u origin --all
git push -u origin –tags
Git / Servidor Remoto
Instalación / Windows
¿Por qué BitBucket?
1. Permite crear repositorios privados sin
restricción.
2. Todas las funcionalidad están incluidas en
la versión de paga y la versión free.
3. Puedes tener hasta 5 colaboradores.
4. Cuenta con herramientas de integración
para JIRA
5. Cuenta con la garantía de Atlassian
Git / Cliente
Instalación / Windows
SourceTree/ Instalación
1. Ingresa a: http://www.sourcetreeapp.com y descarga la
última versión. Presiona siguiente hasta terminar (típico de
windows )
2. Luego de la instalación le indicas que no vas a usar
Mercurial. Sólo si te pregunta
SourceTree/ Clonando Proyectos
1. Ingresa a tu cuenta BitBucket en: https://bitbucket.org, y
verifica tus repositorios
2. Selecciona el repositorio donde trabajaras
3. Copiamos la ruta HTTP/S
SourceTree/ Clonando Proyectos
1. Abrimos el sourcetree y presionamos el botón “Clone /
New”, del menú superior.
2. En Source Path / URL (copia y pega la ruta obtenida en el
paso 4) y en Destination Path (es la carpeta donde se va a
copiar el código fuente)
SourceTree/ Trabajando en un Proyectos
1. Creamos un nuevo archivo en la raíz del proyecto
clonado, lo llamaremos LEEME.txt.
2. Automáticamente se crea un nuevo archivo en
sourcetree, en la parte lateral derecha. Tu nuevo archivo
LEEME.txt aparece bajo la cabecera “Archivos sin
seguimiento” (“Untracked files”).
3. Para poder ponerlo en la zona de stage (staging
área, index), simplemente presionamos el botón “Stage
File”.
4. Presionamos Commit del menú superior.
5. Para proyectos con un repositorio remoto usando PUSH.
6. Para actualizar tu repositorio local con el commit más nuevo
usa el comando PULL
Git / Cliente
Referencia
Gracias por su atención
@minayaleon

More Related Content

What's hot

Git and GitHub | Concept about Git and GitHub Process | Git Process overview
Git and GitHub | Concept about Git and GitHub Process | Git Process overviewGit and GitHub | Concept about Git and GitHub Process | Git Process overview
Git and GitHub | Concept about Git and GitHub Process | Git Process overviewRueful Robin
 
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Simplilearn
 
Learning git
Learning gitLearning git
Learning gitSid Anand
 
Git Branching for Agile Teams
Git Branching for Agile Teams Git Branching for Agile Teams
Git Branching for Agile Teams Atlassian
 
Git Started With Git
Git Started With GitGit Started With Git
Git Started With GitNick Quaranto
 
Version Control System
Version Control SystemVersion Control System
Version Control Systemguptaanil
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHubJames Gray
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to GitLukas Fittl
 

What's hot (20)

Git and GitHub | Concept about Git and GitHub Process | Git Process overview
Git and GitHub | Concept about Git and GitHub Process | Git Process overviewGit and GitHub | Concept about Git and GitHub Process | Git Process overview
Git and GitHub | Concept about Git and GitHub Process | Git Process overview
 
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
 
Learning git
Learning gitLearning git
Learning git
 
Git commands
Git commandsGit commands
Git commands
 
Source Code management System
Source Code management SystemSource Code management System
Source Code management System
 
Introduction to Git and Github
Introduction to Git and GithubIntroduction to Git and Github
Introduction to Git and Github
 
Git Branching for Agile Teams
Git Branching for Agile Teams Git Branching for Agile Teams
Git Branching for Agile Teams
 
Git Started With Git
Git Started With GitGit Started With Git
Git Started With Git
 
Intro to Git and GitHub
Intro to Git and GitHubIntro to Git and GitHub
Intro to Git and GitHub
 
Git and git flow
Git and git flowGit and git flow
Git and git flow
 
Git basic
Git basicGit basic
Git basic
 
Git for beginners
Git for beginnersGit for beginners
Git for beginners
 
git and github
git and githubgit and github
git and github
 
Version Control System
Version Control SystemVersion Control System
Version Control System
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
 
Git e GitHub
Git e GitHubGit e GitHub
Git e GitHub
 
Git 101 for Beginners
Git 101 for Beginners Git 101 for Beginners
Git 101 for Beginners
 
Git basics
Git basicsGit basics
Git basics
 
Git and github 101
Git and github 101Git and github 101
Git and github 101
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 

Similar to Git / Guía Básica

Git para-principiantes
Git para-principiantesGit para-principiantes
Git para-principiantesnscoder_mad
 
Presentacion #2 github Aplicaciones Seguras
Presentacion #2 github Aplicaciones SegurasPresentacion #2 github Aplicaciones Seguras
Presentacion #2 github Aplicaciones SegurasJosé Moreno
 
Introducción a Git
Introducción a GitIntroducción a Git
Introducción a GitManuel Ceron
 
GuiaPrincipiantesGitHubrfuenzalidadev.pptx
GuiaPrincipiantesGitHubrfuenzalidadev.pptxGuiaPrincipiantesGitHubrfuenzalidadev.pptx
GuiaPrincipiantesGitHubrfuenzalidadev.pptxfuenzalidarodrigo
 
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora Blanco
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora BlancoPresentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora Blanco
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora BlancoAntonio Luque Bravo
 
Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando GitHugo Gilmar Erazo
 
Primeros pasos con git
Primeros pasos con gitPrimeros pasos con git
Primeros pasos con gitJuan Vladimir
 
Git & GitHub Part II
Git & GitHub Part IIGit & GitHub Part II
Git & GitHub Part IIMax Rodriguez
 
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
 
Configuración de github
Configuración de githubConfiguración de github
Configuración de githublpedrerosa
 
Mejora tu productividad con git
Mejora tu productividad con gitMejora tu productividad con git
Mejora tu productividad con gitch1l3no
 
Git y Jenkins. El futuro en la gestión del ciclo de vida de aplicaciones
Git y Jenkins. El futuro en la gestión del ciclo de vida de aplicacionesGit y Jenkins. El futuro en la gestión del ciclo de vida de aplicaciones
Git y Jenkins. El futuro en la gestión del ciclo de vida de aplicacionesParadigma Digital
 
Control de versiones con git
Control de versiones con gitControl de versiones con git
Control de versiones con gitEudris Cabrera
 
[ES] Sistemas de control de versiones
[ES] Sistemas de control de versiones[ES] Sistemas de control de versiones
[ES] Sistemas de control de versionesEudris Cabrera
 

Similar to Git / Guía Básica (20)

Tallerintroducciongit
TallerintroducciongitTallerintroducciongit
Tallerintroducciongit
 
Git y github básico
Git y github básicoGit y github básico
Git y github básico
 
Control de versiones
Control de versionesControl de versiones
Control de versiones
 
Git para-principiantes
Git para-principiantesGit para-principiantes
Git para-principiantes
 
Presentacion #2 github Aplicaciones Seguras
Presentacion #2 github Aplicaciones SegurasPresentacion #2 github Aplicaciones Seguras
Presentacion #2 github Aplicaciones Seguras
 
Aprendiendo GIT
Aprendiendo GITAprendiendo GIT
Aprendiendo GIT
 
Introducción a Git
Introducción a GitIntroducción a Git
Introducción a Git
 
GuiaPrincipiantesGitHubrfuenzalidadev.pptx
GuiaPrincipiantesGitHubrfuenzalidadev.pptxGuiaPrincipiantesGitHubrfuenzalidadev.pptx
GuiaPrincipiantesGitHubrfuenzalidadev.pptx
 
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora Blanco
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora BlancoPresentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora Blanco
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora Blanco
 
Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando Git
 
Primeros pasos con git
Primeros pasos con gitPrimeros pasos con git
Primeros pasos con git
 
Git & GitHub Part II
Git & GitHub Part IIGit & GitHub Part II
Git & GitHub Part II
 
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.manual.usuario
Git.manual.usuarioGit.manual.usuario
Git.manual.usuario
 
Configuración de github
Configuración de githubConfiguración de github
Configuración de github
 
Mejora tu productividad con git
Mejora tu productividad con gitMejora tu productividad con git
Mejora tu productividad con git
 
Git y Jenkins. El futuro en la gestión del ciclo de vida de aplicaciones
Git y Jenkins. El futuro en la gestión del ciclo de vida de aplicacionesGit y Jenkins. El futuro en la gestión del ciclo de vida de aplicaciones
Git y Jenkins. El futuro en la gestión del ciclo de vida de aplicaciones
 
Control de versiones con git
Control de versiones con gitControl de versiones con git
Control de versiones con git
 
[ES] Sistemas de control de versiones
[ES] Sistemas de control de versiones[ES] Sistemas de control de versiones
[ES] Sistemas de control de versiones
 
Dependency Managers iOS
Dependency Managers iOSDependency Managers iOS
Dependency Managers iOS
 

More from Juan Victor Minaya León

More from Juan Victor Minaya León (9)

Software Development
Software DevelopmentSoftware Development
Software Development
 
Software Development with PHP & Laravel
Software Development  with PHP & LaravelSoftware Development  with PHP & Laravel
Software Development with PHP & Laravel
 
GraphQL or RESTful
GraphQL or RESTfulGraphQL or RESTful
GraphQL or RESTful
 
Desarrollo de Software 2013
Desarrollo de Software 2013Desarrollo de Software 2013
Desarrollo de Software 2013
 
Propuesta Arquitectura de Mensajería con Xmpp
Propuesta Arquitectura de Mensajería con XmppPropuesta Arquitectura de Mensajería con Xmpp
Propuesta Arquitectura de Mensajería con Xmpp
 
Gestión de Incidencias con Mantis BT
Gestión de Incidencias con Mantis BTGestión de Incidencias con Mantis BT
Gestión de Incidencias con Mantis BT
 
Desarrollo de Software
Desarrollo de SoftwareDesarrollo de Software
Desarrollo de Software
 
Desarrollo para dispositivos Móviles
Desarrollo para dispositivos MóvilesDesarrollo para dispositivos Móviles
Desarrollo para dispositivos Móviles
 
Guía de buenas prácticas para desarrolladores web
Guía de buenas prácticas para desarrolladores webGuía de buenas prácticas para desarrolladores web
Guía de buenas prácticas para desarrolladores web
 

Recently uploaded

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
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
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxRogerPrieto3
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 

Recently uploaded (15)

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
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
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptx
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 

Git / Guía Básica

  • 1. GIT / Manual Básico Juan Minaya León @minayaleon
  • 2. Sistemas de Control de Versiones (SCV) Versión Control de Versiones Sistema de Control de Versiones Programas Mecanismo de almacenamiento, Registro histórico, Cambios (CRUDR) Informes
  • 3.  Ejemplos: CVS, Subversion, SourceSafe (MS), Git, Mercurial.  Arquitectura: Centralizados (existe un repositorio centralizado de todo el código, del cual es responsable uno o más usuario), Distribuidos (Cada usuario tiene su propio repositorio. Los distintos repositorios pueden intercambiar y mezclar revisiones entre ellos. Sistemas de Control de Versiones (SCV)
  • 4. Git Linus Torvalds, 2005  Velocidad  Diseño Sencillo: (Git, Http/s, ssh).  Fuerte apoyo al desarrollo no lineal (miles de ramas paralelas)  Completamente distribuido  Capaz de manejar grandes proyectos como el núcleo de Linux de manera eficiente (velocidad y tamaño de los datos)
  • 5. Git / Fundamentos Almacenamientos de Datos Subversion y CSV tienden a almacenar los datos como cambios de cada archivo respecto a una versión base
  • 6. Git / Fundamentos Almacenamientos de Datos Git modela sus datos como un conjunto de instantáneas. Cada vez que confirmas un cambio, o guardas el estado de tu proyecto en Git, él básicamente hace una foto del aspecto de todos tus archivos en ese momento, y guarda una referencia a esa instantánea
  • 7. Git / Fundamentos Casi cualquier operación es local Verificación por suma de comprobación (checksum), sha-1 Git tiene integridad
  • 8. Git / Estados Git tiene tres estados en los que se pueden encontrar los archivos: confirmado (committed), modificado (modified), y preparado (staged)
  • 9. Git / Flujo 1. Traes el commit más reciente de los servidores locales 2. Modificas una serie de archivos en tu directorio de trabajo. 3. Preparas los archivos, añadiendo instantáneas de ellos a tu área de preparación. 4. Confirmas los cambios, lo que toma los archivos tal y como están en el área de preparación, y almacena esa instantánea de manera permanente en tu directorio de Git.
  • 10. Git en la práctica Instalación / Windows
  • 11. Git / Instalación 1. Ingresa a y descarga la versión más reciente: https://code.google.com/p/msysgit/downloads/list?q=full+i nstaller+official+git (para este documento se uso el 1.8.3) 2. Selecciona todos los componentes y presiona siguiente hasta terminar (típico de windows ) 3. Finalmente aparecerá un icono en tu escritorio
  • 12. Git / Configuración Inicial 1. Abre el Git Bash 2. Para poder hacer commits Git debe saber quien eres (tu email y nombre), si estas usando GitHub o Bitbucket usa los accesos que creaste, si tienes Git en los servidores de tu empresa solicita tus acceso al Sysadmin. git config --global user.name "Juan Minaya" git config --global user.email minayaleon@gmail.com git config --global core.autocrlf false La mayoría de los sistemas operativos Unix representan el final de cada línea con un salto de línea (LF) carácter. Sin embargo, el sistema operativo Windows representa el final de la línea con un retorno de carro (CR) y un LF.
  • 13. Git / Proyectos 1. Abre el Git Bash 2. Para poder hacer commits Git debe saber quien eres (tu email y nombre), si estas usando GitHub o Bitbucket usa los accesos que creaste, si tienes Git en los servidores de tu empresa solicita tus acceso al Sysadmin. git config --global user.name "Juan Minaya" git config --global user.email minayaleon@gmail.com git config --global core.autocrlf false La mayoría de los sistemas operativos Unix representan el final de cada línea con un salto de línea (LF) carácter. Sin embargo, el sistema operativo Windows representa el final de la línea con un retorno de carro (CR) y un LF.
  • 14. Git / Proyectos 1. Navega hasta el directorio del proyecto 2. Inicializa un repositorio en un directorio existente (con un proyecto existente o recién creado con Zrad), usa el comando git init. 3. Para agregar todos los archivos usa el comando git add . 4. Agrega tu primer commit git commit -m "Primer Commit“ 5. Para conectarte a un servidor remoto usa git remote add git init git add . git commit -m "Primer Commit“ git remote add origin <servidor> git push -u origin --all git push -u origin –tags
  • 15. Git / Servidor Remoto Instalación / Windows
  • 16. ¿Por qué BitBucket? 1. Permite crear repositorios privados sin restricción. 2. Todas las funcionalidad están incluidas en la versión de paga y la versión free. 3. Puedes tener hasta 5 colaboradores. 4. Cuenta con herramientas de integración para JIRA 5. Cuenta con la garantía de Atlassian
  • 18. SourceTree/ Instalación 1. Ingresa a: http://www.sourcetreeapp.com y descarga la última versión. Presiona siguiente hasta terminar (típico de windows ) 2. Luego de la instalación le indicas que no vas a usar Mercurial. Sólo si te pregunta
  • 19. SourceTree/ Clonando Proyectos 1. Ingresa a tu cuenta BitBucket en: https://bitbucket.org, y verifica tus repositorios 2. Selecciona el repositorio donde trabajaras 3. Copiamos la ruta HTTP/S
  • 20. SourceTree/ Clonando Proyectos 1. Abrimos el sourcetree y presionamos el botón “Clone / New”, del menú superior. 2. En Source Path / URL (copia y pega la ruta obtenida en el paso 4) y en Destination Path (es la carpeta donde se va a copiar el código fuente)
  • 21. SourceTree/ Trabajando en un Proyectos 1. Creamos un nuevo archivo en la raíz del proyecto clonado, lo llamaremos LEEME.txt. 2. Automáticamente se crea un nuevo archivo en sourcetree, en la parte lateral derecha. Tu nuevo archivo LEEME.txt aparece bajo la cabecera “Archivos sin seguimiento” (“Untracked files”). 3. Para poder ponerlo en la zona de stage (staging área, index), simplemente presionamos el botón “Stage File”. 4. Presionamos Commit del menú superior. 5. Para proyectos con un repositorio remoto usando PUSH. 6. Para actualizar tu repositorio local con el commit más nuevo usa el comando PULL
  • 24. Gracias por su atención @minayaleon