Git 01-introduccion

  • View
    84

  • Download
    2

Embed Size (px)

Text of Git 01-introduccion

  • http://cursosdedesarrollo.com/

    Curso de GitUnidad Didctica 01: Qu es Git?

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    ndice de contenidos Introduccin

    Instalacin

    Gestin de un repositorio

    Colaboracin

    GUIs

    Github

    Gitlab

    Conclusiones

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Qu es Git?

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Git es un sistema de control de versiones distribuido de carpetas y ficheros

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    En qu consiste un sistema de versiones?

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Maneja un histrico de los ficheros y carpetas que pertenecen a un proyecto pudiendo recuperar el

    estado de un proyecto dado

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Cmo se crea un estado?

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Se crea un estado nuevo cada vez que se hace un commit, es decir, se guardan los cambios en un

    repositorio

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Se establecen distintas versiones del proyecto en total

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    En cada versin del repositorio se pueden ver los cambios provocados en cada fichero o carpeta

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Estos cambios son las diferencias entre una versin y otra

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Estos cambios suelen llevar asociado un determinado mensaje que contextualiza el cambio,

    arreglo de un fallo, nueva funcionalidad, etc

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Hasta aqu sera parecido a otros sistemas de versiones como SVN o CVS

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Entonces, Porqu usar Git?

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Ventajas que tiene Git sobre otros sistemas de control de versiones

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Ramificacin

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Permite crear distintas ramas para el cdigo a travs del cual podemos hacer el seguimiento del desarrollo

    de un proyecto

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Convergencia

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Se pueden fusionar ramas para hacer una convergencia de cdigo

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Distribucin

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Cada persona tiene la posibilidad de duplicar el repositorio y tener un repositorio local para que cada

    repositorio sea independiente y los cambios no afecten a los dems necesariamente

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Adaptabilidad

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Segn las necesidades de cada proyecto la estructura de versiones se puede ajustar a cada

    equipo y cada proyecto

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Pull Request

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Introduccin

    Permite que otras personas puedan llegar a querer hacer commits en nuestro repositorio

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Instalacin

    Sitio Oficial

    https://git-scm.com/

    http://cursosdedesarrollo.com/https://git-scm.com/

  • http://cursosdedesarrollo.com/

    Instalacin

    Descarga

    https://git-scm.com/downloads

    http://cursosdedesarrollo.com/https://git-scm.com/downloads

  • http://cursosdedesarrollo.com/

    Instalacin

    Descarga

    https://git-scm.com/downloads

    http://cursosdedesarrollo.com/https://git-scm.com/downloads

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Sobre una carpeta en la que queremos gestionar un proyecto ejecutamos:

    git init

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Con esto creamos un repositorio en esa carpeta

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Si queremos descargarnos un repositorio pblico, debemos clonarlo:

    git clone (URL_REPO) (Directorio destino)

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    En ambos casos podemos gestionar ya los ficheros que hay en ese repositorio

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Siempre est bien configurar los datos de nuestro usuario del repositorio, sobre todo de cara a luego

    compartir dicho repositorio

    git config --global user.name

    git config --global user.email

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Para aadir un archivo o conjunto de archivos al repositorio ejecutamos:

    git add

    git add

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Al aadir los archivos es como decirle al repositorio que queremos gestionar los archivos con dicho

    repositorio, pero si queremos guardar esos cambios como una nueva versin es necesario crear un nuevo

    commit

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Para crear un nuevo commit (versin estable):

    git commit -m datos del cambio

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Para ver los estado en un repositorio:

    git status

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Es posible que no queramos que algunos ficheros sean gestionados por el repositorio para ello

    podemos gestionar el fichero

    .gitignore

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Tambin podemos ver las distintas versiones del repositorio:

    git log

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Con checkout podemos volver el proyecto a una determinada versin de commit:

    git checkout

    git checkout

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Gestin de un Repositorio

    Con revert podemos volver atrs una serie de cambios en el proyecto:

    git revert

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Colaboracin

    De cara a poder colaborar en proyectos lo ms normal es que alguien tenga un repositorio local y quiera compartir cambios con otros repositorios

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Colaboracin

    Los dos cambios principales pueden ser:

    Recibir cambios

    Mandar Cambios

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Colaboracin

    Mandar cambios se llama push

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Colaboracin

    Recibir cambios se llama pull

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Colaboracin

    Para que estos cambios puedan producirse en cualquier direccin es necesario que se disponga de

    un enlace a un repositorio remoto:

    git remote add

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Colaboracin

    Despus de haber hecha esta conexin ya podemos hacer un:

    git pull

    para recibir cambios

    http://cursosdedesarrollo.com/

  • http://cursosdedesarrollo.com/

    Colaboracin