Share
Embed
Transcript
25 slides
-
$ tree contenido/ | -- ¿Qué es Git? | --
Versionar proyecto | | -- Estados de los archivos | | -- Estructura del commit | ` -- Ramas | -- Repositorios ` -- Github -
$ whatis git Es un dcvs (Distributed Control Version System)
Inicialmente escrito y mantenio por Linux Torvalds y desde 2009 por Junio Hamano Gestión distribuida Licencia GNU GPL v2 Escrito en C, Bourne Shell, Perl1 -
$ git init Crea una carpeta llamada “.git” dentro de
nuestro proyecto para darle seguimiento. $ git init # Si se encuentra dentro de la carpeta Initialized empty Git repository in /home/moon/gits/chihuaha/.git/ $ git init chihuhua # crea una carpeta si no existe $ ls -a . .. .git -
$ EDITOR $ main Escribe código. #!/usr/bin/env python print("Soy un
chihua") ~ ~ ~ ~ ~ ~ ~ ~ -- INSERTAR --grabando 3,22 Todo . py -
$ git status Muestra el estado de los archivos del
proyecto que han sido modificados o no estan agregados. $ git status # On branch master # Initial commit # # Untracked files: # (use "git add <file>..." to include #in what will be committed) # # main.py nothing added to commit but untracked files present (use "git add" to track) -
$ git status Existen dos estados superiores en git: Tracked
– Es aquel archivo del cual se ha iniciado un seguimiento y se encuentra en stage, unstage, comitted. Untracked - ! (Es aquel archivo del cual se ha iniciado un seguimiento.)* Este es el caso del archivo main.py * Negacion de expresiones en lenguages similares a C -
$ git status Existen 3 estados dentro de Tracked y
un archivo se encuentra siempre en alguno de ellos debido a que: Stage – Se han hechos cambios a un archivo y estan listos para ser confirmados. Unstage – Son cambios que se han hecho a un archivo que ha sido confirmado pero que aún no se desean confirmar. Commited – Son archivos de los cuales se quiere conservar su estado actual. -
$ git ls - files- t Untracked Tracked Unstage Stage
Commited main.py -
$ git add Agrega archivos al area de preparación, para
ser confirmados. $ git add main.py $ git status # On branch master # # Initial commit # # Changes to be committed: # (use "git rm --cached <file>..." to # unstage) # # new file: main.py -
$ git ls - files- t Untracked Tracked Unstage Stage
Commited main.py -
git rm $ Elimina el snapshot de un archivo que
se encuentra en el area de preparación. $ git add main.py $ git status # On branch master # # Initial commit # # Changes to be committed: # (use "git rm --cached <file>..." to # unstage) # # new file: main.py - - cached -
$ git ls - files- t Untracked Tracked Unstage Stage
Commited main.py -
$ EDITOR $ Archivo de configuración de git, necesaria informacion
para crear confirmaciones. [user] name = Miguel Angel Gordian email = [email protected] ~ ~ ~ ~ ~ ~ ~ ~ -- INSERTAR --grabando 3,22 Todo . gitconfig -
$ git commit Toma los archivos del area de preparación
y crea un snapshot del proyecto. $ git commit [master (root-commit) 3d5b95f] Agregar: Elemento principal (Chihuahua) 1 file changed, 3 insertions(+) create mode 100644 main.py $ git status # On branch master nothing to commit, working directory cleany -
$ git commit Mensaje acerca de los cambios hechos y
las motivaciones a futuro. Agregar: Elemento principal (Chihuahua) Se agrego el elemento chihuahua, se necesita extender el elemento para saludar y despedirse. # Esto es un comentario y no se incluye # en la confirmacion. ~ ~ ~ -- INSERTAR --grabando 3,22 Todo -
$ git ls - files- t Untracked Tracked Unstage Stage
Commited main.py -
$ git log Muestra el historial de confirmaciones. $ git
log --stat --color --graph * commit 3d5b95f1b117ba29bbc71f33f3be0436ceb87695 Author: Miguel Angel Gordian <[email protected]> Date: Sat Oct 26 05:10:55 2013 -0500 Agregar: Elemento principal (Chihuahua) Se agrego el elemento chihuahua, se necesita extender el elemento para saludar y despedirse. main.py | 3 +++ 1 file changed, 3 insertions(+) -
$ git diff Muestra los cambios hechos entre confirmaciones, directorio
de trabajo, etc. $ git diff --color diff --git a/main.py b/main.py index 1091388..9bab4eb 100644 --- a/main.py +++ b/main.py @@ -1,3 +1,11 @@ #!/usr/bin/env python -print("Soy un chihua") +class chihuahua: + def __init__(self): + print("Chihuhua creado") + + def saluda(self): + print("Hola") + + def despidete(self): + print("Adios") -
$ git reset Regresa a una confirmacines de cambio. $
git reset hard – 3d5b95 HEAD ora si trova a 3d5b95f Agregar: Elemento principal (Chihuahua) -
$ git mv,rm { } Mueve y elimina un archivo.
$ git rm file $ git mv file otherFile -
$ git checkout Descarta cambios con base en una confirmación
(se usa comunmete para crear nuevas ramas y saltar a ellas). $ git checkout file – # revierte cambios a una archivo $ git checkout -b -
$ git branch Manipulación de ramas. $ git branch corre
# Revierte cambios a una archivo $ git branch -r corre # Elimina una rama $ git branch -m corre avanzar # Mueve una rama -
$ git remote Repositorios remotos. $ git add name url
# Agrega un repositorio remoto archivo $ git {push, fetch} name # baja actualizacion del remoto $ git push name rama # Sube actualizaciones -
whoami $ Miguel Angel Gordian (zoek) Estudiante de ingenieria en
computación (BUAP) Twitter - @ilcapitanozoek Github – zoek1 SpeakerDeck - zoek1