Search Header Logo
Introducción a Git

Introducción a Git

Assessment

Presentation

Computers

9th Grade - Professional Development

Hard

Created by

Rodrigo Campos

Used 20+ times

FREE Resource

16 Slides • 5 Questions

1

Introducción a Git

by Rodrigo Campos

2

​Introducción

Todos hemos utilizado alguna vez un sistema de control de versiones, desde una simple nomenclatura de nombres de ficheros, ya sea incorporando la fecha en él o las típicas versiones “_final”, “final_final”, “esta_si”, “_ultimo”, etc.

Pero ¿qué es exactamente un VCS (Version Control System)? ¿Qué es git? ¿Como nace? ¿Cuáles son sus flujos de trabajo? ¿Qué diferencias tiene con svn? Estos son dos de los VCS más utilizados y en este curso nos centraremos en responder estas preguntas y profundizar un poco más en git, que es la tendencia en la actualidad.

La idea principal es que terminado este curso tengan las herramientas para poder integrarse fácilmente en un equipo que trabaje con git y poder adaptarse fácilmente a su flujo de trabajo que tengan definido.

media

clase_v1.cs

clase_v2.cs

​ ...

clase_vfinal.cs

media
media

3

​VCS

​Un sistema de control de versiones es básicamente, como se ve en la imagen, un servidor, que contiene un repositorio y los diferentes usuarios trabajan sobre dicho repositorio.

​​​Los hay centralizados y distribuidos.

​Algunos beneficios pueden ser:

  • ​Evitar código duplicado

  • ​Tener siempre la información actualizada

  • ​Eliminación de contenido obsoleto

media

4

​Git

​Git es un VCS creado en 2005 por Linus Torvalds (creador del kernel de Linux). En ese año la relación entre el equipo de Linux y el proveedor de la herramienta de versionado rompieron relaciones, por tal motivo se pusieron con la tarea de generar un controlador de versiones, y así nace Git.

media
media

5

​Git vs SVN

Control de versiones distribuida.

Repositorio con copias locales en las que se trabaja directamente.

El acceso es para la totalidad del directorio.

Seguimiento de los cambios basado en contenido.

Historial de cambios visible tanto el repositorio como las copias de trabajo individuales.

Conectividad solo necesaria para la sincronización.

media

Control de versiones centralizada.

Un repositorio central donde se generan copias de trabajo.

El acceso depende de la ruta, pudiendo otorgar permisos solo a un directorio dentro del repositorio.

Seguimiento de los cambios basado en archivos.

Historial de cambios visible sólo en el repositorio, las copias de trabajo solo tienen la información del punto en el que se encuentran.

Conectividad necesaria con cada acceso

6

​Flujos de Trabajo

Los flujos ofrecen una gran flexibilidad a la hora de gestionar los cambios y promoverlos de un entorno a otro hasta llevarlos a producción.

​Algunos pueden ser:

  • ​Flujo Centralizado

  • ​Flujo con ramas de funcionalidades

  • ​GitFlow

media

7

​Clientes

Dentro de los clientes para git, podemos destacar dos grupos:

  • ​Aplicaciones de Escritorio:

    • ​Gestionan repositorios locales

    • ​Son de libre elección y gusto del desarrollador, pudiendo utilizar más de uno a la vez.​​

  • ​Servicios de Hospedaje Centralizado:

    • ​Gestionan repositorios remotos

    • ​Ofrecen diversos servicios adicionales

media
media
media
media
media
media

8

​Arquitectura de Trabajo

media

9

​Estados de un fichero/cambio en git

media

10

Multiple Select

Un sistema de control de versiones nos ayuda a:

1

evitar la duplicidad de información

2

coordinar el trabajo de varios desarrolladores

3

a mejorar la forma de códificar

4

ver la evolución del código a través del tiempo

11

Multiple Choice

Sobre git, es falso que:

1

Fue creado como necesidad del proyecto del kernel de linux

2

Es ideal para proyectos con una gran envergadura de código

3

Fue creado el 2005 por Bill Gates

4

Es un VCS distribuido

12

Multiple Choice

¿Cuál de las siguiente aseveraciones es o son correctas?

I - git trabaja con copias locales (repositorios locales)

II - La conectividad es necesaria solo para sincronizar

III - EL historial de cambios se puede ver solo en el repositorio remoto

1

Solo I es correcto

2

Solo II es correcto

3

Solo III es correcto

4

I y II son correctas

5

I y III son correctas

13

Multiple Choice

¿Cuál es el flujo ideal para quienes migran de subversion a git?

1

Con ramas de función

2

GitFlow

3

Flujo centralizado

4

Otro

14

Multiple Select

Sobre los clientes de git, es correcto:

1

Hay dos tipos de clientes (aplicaciones de escritorio y de hospedaje centralizado)

2

Un desarrollador, solo puede utilizar un cliente de escritorio para git

3

Bitbucket es un cliente de hospedaje centralizado

4

githab y gitlab sirven para gestionar repositorios locales

15

​Comandos Básicos

  • Git init

    Git clone

    Git config

    Git log

    Git status

    Git branch

    Git checkout

    Git add

    Git commit

    Git push

    Git fetch

    Git merge

    Git pull

    Git diff

    Git reset

​https://git-scm.com/docs

media

16

Ejercicio Práctico​

17

​Instrucciones

Chequeamos la instalación de:

  • Git

    • https://git-scm.com/download/win

  • GitExtension

    • https://github.com/gitextensions/gitextensions/releases/download/v3.5/GitExtensions-3.5.0.11713-0a5ef9ca6.msi

  • VS Code

    • https://code.visualstudio.com/download

Registrarse en GitLab

  • https://gitlab.com

Ejercicio:

  • Clonamos: https://gitlab.com/introgit/practico.git

    • git clone https://gitlab.com/introgit/practico.git

  • Generar una rama con su nombre-apellido

    • git branch feature/nombre-apellido

  • Agregar un html con sus datos, seguir el formato del ejemplo ya versionado

  • Generar un Merge Request en GitLab indicando como rama destino la rama master.

media

18

​Conclusión

​Resumiendo, hemos revisado

  • ​Que son los Sistemas de Control de Versiones y su evolución.

  • ​Que es git

  • Comparativa de git con svn​

  • ​Flujos de trabajo con git

  • Clientes​, Arquitectura y Estados de los cambios

  • Comandos básicos​

​Ahora ya pueden

  • ​Trabajar fácilmente con git.

  • ​Integrarse en un proyecto que utilice git

  • Entender los flujos que se pueden llegar a usar y tener las bases para poder proponer uno nuevo

Los invito a que sigan investigando de git y por supuesto si tienen dudas me pueden contactar sin problema.

19

20

​Favor Responder Encuesta de Evaluación

https://forms.office.com/Pages/ResponsePage.aspx?id=h9xIMPBDAEGay64ZcceTlWTDkcNfkXVErAMNemBhx-RUMEs2QlY4T1pJWUpKNjI5WktWT0E4S0lLVyQlQCN0PWcu

media

21

media

Introducción a Git

by Rodrigo Campos

Show answer

Auto Play

Slide 1 / 21

SLIDE