Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Mini-tutorial de git

29,848 views

Published on

Mini-tutorial de GIT el sistema distribuído de control de versiones utilizado por el kernel Linux y otros proyectos de código abierto.

Published in: Technology
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • muy bueno, gracias
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • ¡Muy interesante y útil!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • muy bueno y explicado con una guía de comandos
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Mini-tutorial de git

  1. 1. Mini-tutorial de Git Controlando las versiones del código fuente Antonio Ognio antonio@linux.org.pe
  2. 2. Mini-tutorial de Git – Antonio Ognio Agenda ● ¿Qué es Git? ● Breve historia ● Comandos básicos ● Ejemplos prácticos ● Github ● Conclusiones
  3. 3. Mini-tutorial de Git – Antonio Ognio ¿Qué es Git? ● Un sistema distribuído de control de versiones ● Software libre / Código abierto ● Cada “clón” es una repositorio completo ● Completo historial de revisiones ● No depende de un repositorio central ● Crear branches y hacer merge es rápido y fácil
  4. 4. Mini-tutorial de Git – Antonio Ognio ¿Porqué nos podría interesar? ● Es utilizado por el proyecto del Kernel de Linux ● Fué escrito por Linus Torvalds (originalmente) ●Es utilizado en proyectos como: Perl, GNOME, Qt, Ruby on Rails, Android, Wine, etc ● Esta “de moda” con sitios como Github ● Ideal para un uso personal
  5. 5. Mini-tutorial de Git – Antonio Ognio Sistema de control de versiones (RCS) ● Permite llevar cuenta de los cambios de un conjunto de archivos digitales en el tiempo ● Cada versión registrada en el tiempo es una “revisión” ● Muy utilizado para la gestión de código fuente ●Permite tanto a un desarrollador individual como a un grupo de programadores gestionar el código de un proyecto ● Especializados en archivos de texto (generalmente)
  6. 6. Mini-tutorial de Git – Antonio Ognio ¿Qué otros sistemas de control de versiones hay? ● RCS (el original, de Pardue University luego GNU) ● CVS ● Subversion (SVN) ● Mercurial (hg) ● Bazaar (bzr) ● Visual SourceSafe (Microsoft)
  7. 7. Mini-tutorial de Git – Antonio Ognio ¿Porqué es “distribuído”? ● No requiere un repositorio “central” (como svn) ● Cada copia o “clón” es autosuficiente y completa ● Cualquier copia se puede actualizar contra otra
  8. 8. Mini-tutorial de Git – Antonio Ognio Breve Historia ● El Kernel Linux es el proyecto de código abierto más grande y con más actividad que existe en el mundo ●En el 2002 Linus Torvalds encontró en BitKeeper, un producto comercial de la empresa BitMover un RCS superior y decidió usarlo ● Stallman lo criticó, Alan Cox (Kernel 2.2) se opuso pero igual se utilizó gracias a una licencia especial para proyectos libres extendida por Larry McVoy
  9. 9. Mini-tutorial de Git – Antonio Ognio Breve Historia (continuación) ● En 2005 se eliminó la licencia gratuita de BitKeeper señalando a Andrew Tridgell (TRAC) de haber hecho ingeniería reversa (cosa que el desmintió) ● Linus Torvalds tomó el toro por las astas y escribió el mismo un sistema RCS con lo mejor de SVN, Bitkeeper y las mejoras necesarias para el kernel ●Luego de 2 semanas de no trabajar en el kernel Linus crea “GIT” y comienza la historia...
  10. 10. Mini-tutorial de Git – Antonio Ognio ¿Porqué Linus tuvo que crear Git? ●Ni siquiera BitKeeper era lo suficientemente rápido para las necesidades del kernel como proyecto ●Muchos parches complicados tomaban hasta 30 segundos en aplicarse ●Sincronizar las versiones entre Linus Torvalds y Andrew Morton (mantenedor de la rama 2.6 demoraba 2 horas!) ● Se necesitaba algo veloz y distribuído, nace Git!
  11. 11. Mini-tutorial de Git – Antonio Ognio Comandos básicos
  12. 12. Mini-tutorial de Git – Antonio Ognio Comandos básicos http://ktown.kde.org/~zrusin/git/
  13. 13. Mini-tutorial de Git – Antonio Ognio Ejemplos prácticos ● Iniciar un proyecto ● Ir trabajando por “pedacitos” ● Revisar el trabajo realizado ● Corregir errores ● Trabajando con un repositorio remoto Tomado de: http://www.spheredev.org/wiki/Git_for_the_lazy
  14. 14. Mini-tutorial de Git – Antonio Ognio Iniciar un proyecto 1. Crear una carpeta, entrar a una ya existente o descomprimir un archivo comprimido cd proyecto 2. Decirle a git que empiece a llevar cuenta de los cambios git init . 3. Agregar todos los archivos presentes git add . 4. Crear la revisión inicial git commit -m 'Revisión inicial'
  15. 15. Mini-tutorial de Git – Antonio Ognio Ir trabajando por “pedacitos” 1. Ver que archivos han cambiado git status 2. Ver los cambios en formato de parche (diff) git diff 3. Agregar a la próxima revisión los archivos mencionados en el paso 1 que deseamos incluir git add archivo1 archivo2 carpeta1 carpeta2 4. Crear una nueva revisión git commit -m 'Nueva revisión con tales cambios'
  16. 16. Mini-tutorial de Git – Antonio Ognio Revisar el trabajo realizado 1. Ver el historial de cambios git log 2. Ver solo las últimas n (ej. 3) revisiones: git log –n3 3. Ver cambios de forma detallada git log --stat --summary
  17. 17. Mini-tutorial de Git – Antonio Ognio Corregir errores 1. Descartar todos los cambios hechos desde la última revisión git reset --hard 2. Descartar cambios en un archivo individual (actualizar a la última revisión conocida) git checkout archivo 3. Corrigiendo la descripción de la última revisión (el último commit) git commit --amend 4. Incluir algo que debió estar en la última revisión creada git reset --soft HEAD^ git add olvidado1 olvidado2 git commit
  18. 18. Mini-tutorial de Git – Antonio Ognio Trabajando con un repositorio remoto 1. Crear un “clón” del repositorio remoto git clone git://servidor.com/ruta/al/proyecto.git 2. Agregar el origen remoto git remote add origin git://servidor.com/ruta/al/proyecto.git 3. Hacer cambios y agregar los archivos modificados a una nueva revisión git add archivo1 archivo2 carpeta1 carpeta2 git commit -m 'Nueva revisión con tales cambios' 4. Enviar los cambios de vuelta al repositorio remoto git push origin master
  19. 19. Mini-tutorial de Git – Antonio Ognio Github ● Sitio web de hospedaje de proyectos usando git ● Plan básico (gratuito) + otros planes pagados ● 300 MB de almacenamiento para proyectos ●Permite hacer “fork” con facilidad y luego solicitar al dueño del repo original que haga “pull” ● Una “red social” para programadores :)
  20. 20. Mini-tutorial de Git – Antonio Ognio Github
  21. 21. Mini-tutorial de Git – Antonio Ognio Github
  22. 22. Mini-tutorial de Git – Antonio Ognio Github
  23. 23. Mini-tutorial de Git – Antonio Ognio Conclusiones ● Git es una herramienta rápida, eficiente y moderna para el control de versiones de proyectos con archivos digitales sean o no código fuente ●Git permite flujos de trabajo distribuídos en los que no tiene porque existir un repositorio central ●Linus Torvalds creó Git de acuerdo a las necesidades del kernel pero ofreció una gran herramienta a la comunidad en general

×