SlideShare une entreprise Scribd logo
1  sur  35
Télécharger pour lire hors ligne
Repositorio para la FS
GIT
ENOVA
¿Qué es GIT?
• SW de control de versiones.
• Empezó en 2005.
• Creado por Linus Torvalds.
Git - Gitlab
Git - Gitlab
El flujo de trabajo básico en Git es algo
así:
1. Modificas una serie de archivos en tu directorio de trabajo.
2. Preparas los archivos, añadiéndolos a tu área de preparación.
3. Confirmas los cambios, lo que toma los archivos tal y como están en el
área de preparación, y almacena esas instantáneas de manera permanente
en tu directorio de Git.
Recordar:
Si una versión concreta de un archivo está en el directorio
de Git, se considera confirmada (committed).
Si ha sufrido cambios desde que se obtuvo del repositorio,
pero ha sido añadida al área de preparación, está
preparada (staged).
Y si ha sufrido cambios desde que se obtuvo del
repositorio, pero no se ha preparado, está modificada
(modified).
Git - Gitlab
Git - Gitlab
$ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext 
libz-dev
Compilar e instalar
$ tar -zxf git-1.6.0.5.tar.gz
$ cd git-1.6.0.5
$ make prefix=/usr/local all
$ sudo make prefix=/usr/local install
$ apt-get install git
Configurando GIT por primera vez
$ git config --global user.name "Francisco Escandon"
$ git config --global user.email francisco@enova.mx
Tu editor
Tu configuración
$ git config --global core.editor emacs
Comprobando tu configuración
$ git config --list
user.name=Francisco Escandon
user.email=francisco@enova.mx
color.diff=auto
...
Obteniendo Ayuda
$ git help <comando>
$ git <comando> --help
$ man git-<comando>
Por ejemplo, puedes ver la página del manual para el comando config
ejecutando:
$ git help config
Obteniendo un repositorio GIT
Inicializando un repositorio en un directorio existente
$ git init
Clonando un repositorio existente
$ git clone http://10.250.0.6/enovadevelopers/capacitacion-git.git
$ git clone git@10.250.0.6:enovadevelopers/capacitacion-git.git dir
Recordar
Cada archivo de tu directorio de trabajo puede estar en uno de estos dos estados:
bajo seguimiento (tracked), o sin seguimiento (untracked).
Los archivos bajo seguimiento son aquellos que existían en la última instantánea;
pueden estar sin modificaciones, modificados, o preparados.
Los archivos sin seguimiento son todos los demás —cualquier archivo de tu
directorio que no estuviese en tu última instantánea ni está en tu área de
preparación—.
La primera vez que clonas un repositorio, todos tus archivos estarán bajo
seguimiento y sin modificaciones, ya que los acabas de copiar y no has modificado
nada.
Git - Gitlab
$ git status
# On branch master
nothing to commit (working directory clean)
Comprobando el estado de tus archivos
$ git status
En la rama master
Your branch is up-to-date with 'origin/master'.
Archivos sin seguimiento:
(use «git add <archivo>...» para incluir lo que se ha de
ejecutar)
programa2.php
no se ha agregado nada al commit pero existen archivos sin
seguimiento (use «git add» para darle seguimiento)
Si agregamos un archivo (programa2.php)
Seguimiento de nuevos archivos
$ git add programa2.php
Seguimiento de nuevos archivos
$ git add programa2.php
$ git status
En la rama master
Your branch is up-to-date with 'origin/master'.
Cambios para hacer commit:
(use «git reset HEAD <archivo>...«para eliminar
stage)
new file: programa2.php
Ignorando archivos
$ cat .gitignore
*.[oa]
*~
Confirmando tus cambios
Cualquier cosa que todavía esté sin preparar —cualquier archivo que hayas creado
o modificado, y sobre el que no hayas ejecutado git add desde su última edición—
no se incluirá en esta confirmación.
$ git commit
$ git commit -m "Se añade el programa2.php que ... "
[master fd017e4] Se añade el programa2.php al repositorio
1 file changed, 5 insertions(+)
create mode 100644 programa2.php
Saltándote el área de preparación
Si quieres saltarte el área de preparación, Git proporciona un atajo. Pasar la
opción -a al comando git commit hace que Git prepare todo archivo que
estuviese en seguimiento antes de la confirmación, permitiéndote obviar toda la
parte de git add
$ git commit -a -m 'ae agregan cambios de ...'
[master 83e38c7] added new benchmarks
1 files changed, 5 insertions(+), 0
deletions(-)
Eliminando archivos
Para eliminar un archivo de Git, debes eliminarlo de tus archivos bajo seguimiento
o de tu área de preparación y después confirmar.
$ rm programa2.php
$ git status
# On branch master
#
# Changes not staged for commit:
# (use "git add/rm <file>..." to update what will be committed)
#
# deleted: programa2.php
#
$ git rm programa2.php
rm 'programa2.php'
$ git status
# On branch master
#
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# deleted: programa2.php
#
Viendo el histórico de confirmaciones (git log)
$ git log
commit fd017e49af8429fb20711ce67f0bdfa53640e8a5
Author: euler.sanchez <euler.sanchez@enova.mx>
Date: Mon Apr 28 15:07:41 2014 -0500
Se añade el programa2.php al repositorio
commit 343a08c7a7a346eb9b5b8972deb3470b0ed90ae1
Author: victor.barrientos <victor.barrientos@enova.mx>
Date: Tue Apr 22 15:44:18 2014 -0500
Se agrego un echo
commit 56abe6f29fb6c2097880d329f1d840bddd1a3167
Author: euler.sanchez <euler.sanchez@enova.mx>
Date: Tue Apr 22 15:15:41 2014 -0500
Calcula el factorial de 5
commit 1acc24637f1c943e45259e680690ef583ec31b50
Author: euler.sanchez <euler.sanchez@enova.mx>
Date: Tue Apr 22 14:32:21 2014 -0500
First commit
Trabajando con repositorios remotos
Colaborar con otros implica gestionar estos repositorios remotos, y mandar
(push) y recibir (pull) datos de ellos cuando necesites compartir cosas.
$ git remote -v
originhttp://10.250.0.6/enovadevelopers/capacitacion-
git.git
Creando repositorios
mkdir test
cd test
git init
touch README
git add README
git commit -m 'first commit'
git remote add origin git@10.250.0.6:enovadevelopers/test.git
git push -u origin master
$ git push origin master
Username for 'http://10.250.0.6': euler.sanchez
Password for 'http://euler.sanchez@10.250.0.6':
Counting objects: 4, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 371 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To http://10.250.0.6/enovadevelopers/capacitacion-git.git
343a08c..fd017e4 master -> master
¿Qué es una rama?
$ git add README test.rb LICENSE
$ git commit -m 'initial commit of my project'
Vamos a suponer, por ejemplo, que tienes una carpeta con tres archivos, que
preparas (stage) todos ellos y los confirmas (commit).
Si haces más cambios y vuelves a confirmar, la siguiente confirmación guardará un
apuntador a esta su confirmación precedente.
Una rama Git es simplemente un apuntador móvil apuntando a una de esas
confirmaciones. La rama por defecto de Git es la rama 'master'.
En cada confirmación de cambios que realicemos, la rama irá avanzando
automáticamente. Y la rama 'master' apuntará siempre a la última confirmación
realizada.
Si quieres crear una nueva rama denominada "testing". Usarás el comando 'git
branch'
$ git branch testing
¿Cómo sabe Git en qué rama estás en este momento?
R = Mediante el apuntador HEAD
Recordar: El comando git branch solamente crea una nueva rama, y no salta a dicha
rama.
$ git checkout testing
Para saltar de una rama a otra se utiliza git checkout. Esto mueve el apuntador
HEAD a la rama 'testing'
Si ahora ejecutamos lo siguiente:
$ vim programa3.php
$ git commit -a -m 'Se hace un cambio'
La rama 'testing' avanza, mientras que la rama 'master' permanece en la
confirmación donde estaba cuando lanzaste el comando 'git checkout' para saltar.
$ git checkout master
Mueve el apuntador HEAD de nuevo a la rama 'master', y revierte los archivos de
tu directorio de trabajo; dejándolos tal y como estaban en la última instantánea
confirmada en dicha rama 'master'.
GITLAB esta instalado en 10.250.0.6
Usuarios: francisco.escandon
Password: 123456789
GitLab is used in more than 100,000 organizations
https://www.gitlab.com/
Git - Gitlab
Fuentes:
http://git-scm.com/book/es/Empezando
https://www.gitlab.com/
https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg
Gracias

Contenu connexe

Tendances

GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with G...
GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with G...GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with G...
GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with G...GITS Indonesia
 
Beginner's guide to git and github
Beginner's guide to git and github Beginner's guide to git and github
Beginner's guide to git and github SahilSonar4
 
Git & SourceTree
Git & SourceTreeGit & SourceTree
Git & SourceTreeTu Tran
 
Git et les systèmes de gestion de versions
Git et les systèmes de gestion de versionsGit et les systèmes de gestion de versions
Git et les systèmes de gestion de versionsAlice Loeser
 
Gitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTreeGitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTreeTeerapat Khunpech
 
Using GitLab CI
Using GitLab CIUsing GitLab CI
Using GitLab CIColCh
 
Git Lab Introduction
Git Lab IntroductionGit Lab Introduction
Git Lab IntroductionKrunal Doshi
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionAnwarul Islam
 
Git - Basic Crash Course
Git - Basic Crash CourseGit - Basic Crash Course
Git - Basic Crash CourseNilay Binjola
 
Git 더하기 GitHub(구름IDE 환경)
Git 더하기 GitHub(구름IDE 환경)Git 더하기 GitHub(구름IDE 환경)
Git 더하기 GitHub(구름IDE 환경)Junyoung Lee
 
Github - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsGithub - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsLee Hanxue
 

Tendances (20)

GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with G...
GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with G...GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with G...
GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with G...
 
Beginner's guide to git and github
Beginner's guide to git and github Beginner's guide to git and github
Beginner's guide to git and github
 
Introdução ao Git
Introdução ao GitIntrodução ao Git
Introdução ao Git
 
Git & SourceTree
Git & SourceTreeGit & SourceTree
Git & SourceTree
 
Git et les systèmes de gestion de versions
Git et les systèmes de gestion de versionsGit et les systèmes de gestion de versions
Git et les systèmes de gestion de versions
 
Gitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTreeGitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTree
 
Using GitLab CI
Using GitLab CIUsing GitLab CI
Using GitLab CI
 
Git l'essentiel
Git l'essentielGit l'essentiel
Git l'essentiel
 
Git Lab Introduction
Git Lab IntroductionGit Lab Introduction
Git Lab Introduction
 
Git-Dasar
Git-DasarGit-Dasar
Git-Dasar
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training Session
 
Git e GitHub
Git e GitHubGit e GitHub
Git e GitHub
 
Git basics for beginners
Git basics for beginnersGit basics for beginners
Git basics for beginners
 
Introducción a GitFlow
Introducción a GitFlowIntroducción a GitFlow
Introducción a GitFlow
 
Git - Basic Crash Course
Git - Basic Crash CourseGit - Basic Crash Course
Git - Basic Crash Course
 
git and github
git and githubgit and github
git and github
 
Git 101 for Beginners
Git 101 for Beginners Git 101 for Beginners
Git 101 for Beginners
 
Git 더하기 GitHub(구름IDE 환경)
Git 더하기 GitHub(구름IDE 환경)Git 더하기 GitHub(구름IDE 환경)
Git 더하기 GitHub(구름IDE 환경)
 
Github - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsGithub - Git Training Slides: Foundations
Github - Git Training Slides: Foundations
 
Aprendendo Git
Aprendendo GitAprendendo Git
Aprendendo Git
 

Similaire à Git - Gitlab

Git & GitHub Part II
Git & GitHub Part IIGit & GitHub Part II
Git & GitHub Part IIMax Rodriguez
 
Taller Git en la URJC
Taller Git en la URJC Taller Git en la URJC
Taller Git en la URJC sidelab
 
Introducción a git
Introducción a gitIntroducción a git
Introducción a gitKeopx
 
WorkShop: Introducción a GIT
WorkShop: Introducción a GITWorkShop: Introducción a GIT
WorkShop: Introducción a GITKeopx
 
GITHUB control de versiones, para el manejo de repositorios versionados
GITHUB control de versiones, para el manejo de repositorios versionadosGITHUB control de versiones, para el manejo de repositorios versionados
GITHUB control de versiones, para el manejo de repositorios versionadosyuri460292
 
Git: un enfoque práctico
Git: un enfoque prácticoGit: un enfoque práctico
Git: un enfoque prácticoPatxi Gortázar
 
Git para-principiantes
Git para-principiantesGit para-principiantes
Git para-principiantesnscoder_mad
 
Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando GitHugo Gilmar Erazo
 
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
 
Taller breve de introduccion a Git
Taller breve de introduccion a GitTaller breve de introduccion a Git
Taller breve de introduccion a GitMario IC
 
Primeros pasos con git
Primeros pasos con gitPrimeros pasos con git
Primeros pasos con gitJuan Vladimir
 
Más allá de Git add/commit/push
Más allá de Git add/commit/pushMás allá de Git add/commit/push
Más allá de Git add/commit/pushAlexis Lopez
 
Introducción a GIT
Introducción a GITIntroducción a GIT
Introducción a GITmaxfontana90
 

Similaire à Git - Gitlab (20)

Git & GitHub Part II
Git & GitHub Part IIGit & GitHub Part II
Git & GitHub Part II
 
Taller Git en la URJC
Taller Git en la URJC Taller Git en la URJC
Taller Git en la URJC
 
Control de versiones
Control de versionesControl de versiones
Control de versiones
 
Introducción a git
Introducción a gitIntroducción a git
Introducción a git
 
WorkShop: Introducción a GIT
WorkShop: Introducción a GITWorkShop: Introducción a GIT
WorkShop: Introducción a GIT
 
Control de versiones con Git
Control de versiones con GitControl de versiones con Git
Control de versiones con Git
 
GITHUB control de versiones, para el manejo de repositorios versionados
GITHUB control de versiones, para el manejo de repositorios versionadosGITHUB control de versiones, para el manejo de repositorios versionados
GITHUB control de versiones, para el manejo de repositorios versionados
 
Git: un enfoque práctico
Git: un enfoque prácticoGit: un enfoque práctico
Git: un enfoque práctico
 
Git
GitGit
Git
 
Intro a GIT
Intro a GITIntro a GIT
Intro a GIT
 
Git para-principiantes
Git para-principiantesGit para-principiantes
Git para-principiantes
 
Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando Git
 
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
 
Taller breve de introduccion a Git
Taller breve de introduccion a GitTaller breve de introduccion a Git
Taller breve de introduccion a Git
 
Primeros pasos con git
Primeros pasos con gitPrimeros pasos con git
Primeros pasos con git
 
Git y github básico
Git y github básicoGit y github básico
Git y github básico
 
Más allá de Git add/commit/push
Más allá de Git add/commit/pushMás allá de Git add/commit/push
Más allá de Git add/commit/push
 
Git 101
Git 101Git 101
Git 101
 
Git res baz ec - final
Git   res baz ec - finalGit   res baz ec - final
Git res baz ec - final
 
Introducción a GIT
Introducción a GITIntroducción a GIT
Introducción a GIT
 

Plus de Euler Sánchez

Plus de Euler Sánchez (6)

Devops
DevopsDevops
Devops
 
Lean / Kanban
Lean / KanbanLean / Kanban
Lean / Kanban
 
Análisis/QA
Análisis/QAAnálisis/QA
Análisis/QA
 
Metodologías Ágiles
Metodologías ÁgilesMetodologías Ágiles
Metodologías Ágiles
 
Scrum
ScrumScrum
Scrum
 
Presentación - RIA utilizando un ERP-SAP
Presentación - RIA utilizando un ERP-SAPPresentación - RIA utilizando un ERP-SAP
Presentación - RIA utilizando un ERP-SAP
 

Dernier

TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfTENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfJoseAlejandroPerezBa
 
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfActividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfalejandrogomezescoto
 
Los mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfLos mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfodalistar77
 
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdfPresentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdfymiranda2
 
VIDEOS DE APOYO.docx E
VIDEOS DE APOYO.docx                                  EVIDEOS DE APOYO.docx                                  E
VIDEOS DE APOYO.docx Emialexsolar
 
Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.marianarodriguezc797
 
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETDe Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETGermán Küber
 
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosEl diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosLCristinaForchue
 
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...OLGAMILENAMONTAEZNIO
 
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfInmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfOBr.global
 
La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2montoyagabriela340
 
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOSPRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOSLincangoKevin
 
Análisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdfAnálisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdfcastrodanna185
 
La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....Aaron Betancourt
 
Carta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdfCarta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdfangelinebocanegra1
 
Inteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidadInteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidaddanik1023m
 
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...RaymondCode
 
Matriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxMatriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxPaolaCarolinaCarvaja
 

Dernier (20)

TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfTENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
 
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfActividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
 
Los mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfLos mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdf
 
BEDEC Proyecto y obra , novedades 2024 - Xavier Folch
BEDEC Proyecto y obra , novedades 2024 - Xavier FolchBEDEC Proyecto y obra , novedades 2024 - Xavier Folch
BEDEC Proyecto y obra , novedades 2024 - Xavier Folch
 
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdfPresentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
 
VIDEOS DE APOYO.docx E
VIDEOS DE APOYO.docx                                  EVIDEOS DE APOYO.docx                                  E
VIDEOS DE APOYO.docx E
 
Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.
 
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETDe Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
 
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosEl diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
 
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
 
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfInmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
 
La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2
 
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOSPRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
 
Análisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdfAnálisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdf
 
La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....
 
Carta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdfCarta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdf
 
Inteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidadInteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidad
 
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
 
BEDEC Sostenibilidad, novedades 2024 - Laura Silva
BEDEC Sostenibilidad, novedades 2024 - Laura SilvaBEDEC Sostenibilidad, novedades 2024 - Laura Silva
BEDEC Sostenibilidad, novedades 2024 - Laura Silva
 
Matriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxMatriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docx
 

Git - Gitlab

  • 1. Repositorio para la FS GIT ENOVA
  • 2. ¿Qué es GIT? • SW de control de versiones. • Empezó en 2005. • Creado por Linus Torvalds.
  • 5. El flujo de trabajo básico en Git es algo así: 1. Modificas una serie de archivos en tu directorio de trabajo. 2. Preparas los archivos, añadiéndolos a tu área de preparación. 3. Confirmas los cambios, lo que toma los archivos tal y como están en el área de preparación, y almacena esas instantáneas de manera permanente en tu directorio de Git.
  • 6. Recordar: Si una versión concreta de un archivo está en el directorio de Git, se considera confirmada (committed). Si ha sufrido cambios desde que se obtuvo del repositorio, pero ha sido añadida al área de preparación, está preparada (staged). Y si ha sufrido cambios desde que se obtuvo del repositorio, pero no se ha preparado, está modificada (modified).
  • 9. $ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext libz-dev Compilar e instalar $ tar -zxf git-1.6.0.5.tar.gz $ cd git-1.6.0.5 $ make prefix=/usr/local all $ sudo make prefix=/usr/local install $ apt-get install git
  • 10. Configurando GIT por primera vez $ git config --global user.name "Francisco Escandon" $ git config --global user.email francisco@enova.mx Tu editor Tu configuración $ git config --global core.editor emacs Comprobando tu configuración $ git config --list user.name=Francisco Escandon user.email=francisco@enova.mx color.diff=auto ...
  • 11. Obteniendo Ayuda $ git help <comando> $ git <comando> --help $ man git-<comando> Por ejemplo, puedes ver la página del manual para el comando config ejecutando: $ git help config
  • 12. Obteniendo un repositorio GIT Inicializando un repositorio en un directorio existente $ git init Clonando un repositorio existente $ git clone http://10.250.0.6/enovadevelopers/capacitacion-git.git $ git clone git@10.250.0.6:enovadevelopers/capacitacion-git.git dir
  • 13. Recordar Cada archivo de tu directorio de trabajo puede estar en uno de estos dos estados: bajo seguimiento (tracked), o sin seguimiento (untracked). Los archivos bajo seguimiento son aquellos que existían en la última instantánea; pueden estar sin modificaciones, modificados, o preparados. Los archivos sin seguimiento son todos los demás —cualquier archivo de tu directorio que no estuviese en tu última instantánea ni está en tu área de preparación—. La primera vez que clonas un repositorio, todos tus archivos estarán bajo seguimiento y sin modificaciones, ya que los acabas de copiar y no has modificado nada.
  • 15. $ git status # On branch master nothing to commit (working directory clean) Comprobando el estado de tus archivos $ git status En la rama master Your branch is up-to-date with 'origin/master'. Archivos sin seguimiento: (use «git add <archivo>...» para incluir lo que se ha de ejecutar) programa2.php no se ha agregado nada al commit pero existen archivos sin seguimiento (use «git add» para darle seguimiento) Si agregamos un archivo (programa2.php)
  • 16. Seguimiento de nuevos archivos $ git add programa2.php Seguimiento de nuevos archivos $ git add programa2.php $ git status En la rama master Your branch is up-to-date with 'origin/master'. Cambios para hacer commit: (use «git reset HEAD <archivo>...«para eliminar stage) new file: programa2.php
  • 17. Ignorando archivos $ cat .gitignore *.[oa] *~ Confirmando tus cambios Cualquier cosa que todavía esté sin preparar —cualquier archivo que hayas creado o modificado, y sobre el que no hayas ejecutado git add desde su última edición— no se incluirá en esta confirmación. $ git commit $ git commit -m "Se añade el programa2.php que ... " [master fd017e4] Se añade el programa2.php al repositorio 1 file changed, 5 insertions(+) create mode 100644 programa2.php
  • 18. Saltándote el área de preparación Si quieres saltarte el área de preparación, Git proporciona un atajo. Pasar la opción -a al comando git commit hace que Git prepare todo archivo que estuviese en seguimiento antes de la confirmación, permitiéndote obviar toda la parte de git add $ git commit -a -m 'ae agregan cambios de ...' [master 83e38c7] added new benchmarks 1 files changed, 5 insertions(+), 0 deletions(-)
  • 19. Eliminando archivos Para eliminar un archivo de Git, debes eliminarlo de tus archivos bajo seguimiento o de tu área de preparación y después confirmar. $ rm programa2.php $ git status # On branch master # # Changes not staged for commit: # (use "git add/rm <file>..." to update what will be committed) # # deleted: programa2.php # $ git rm programa2.php rm 'programa2.php' $ git status # On branch master # # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # deleted: programa2.php #
  • 20. Viendo el histórico de confirmaciones (git log) $ git log commit fd017e49af8429fb20711ce67f0bdfa53640e8a5 Author: euler.sanchez <euler.sanchez@enova.mx> Date: Mon Apr 28 15:07:41 2014 -0500 Se añade el programa2.php al repositorio commit 343a08c7a7a346eb9b5b8972deb3470b0ed90ae1 Author: victor.barrientos <victor.barrientos@enova.mx> Date: Tue Apr 22 15:44:18 2014 -0500 Se agrego un echo commit 56abe6f29fb6c2097880d329f1d840bddd1a3167 Author: euler.sanchez <euler.sanchez@enova.mx> Date: Tue Apr 22 15:15:41 2014 -0500 Calcula el factorial de 5 commit 1acc24637f1c943e45259e680690ef583ec31b50 Author: euler.sanchez <euler.sanchez@enova.mx> Date: Tue Apr 22 14:32:21 2014 -0500 First commit
  • 21. Trabajando con repositorios remotos Colaborar con otros implica gestionar estos repositorios remotos, y mandar (push) y recibir (pull) datos de ellos cuando necesites compartir cosas. $ git remote -v originhttp://10.250.0.6/enovadevelopers/capacitacion- git.git Creando repositorios mkdir test cd test git init touch README git add README git commit -m 'first commit' git remote add origin git@10.250.0.6:enovadevelopers/test.git git push -u origin master
  • 22. $ git push origin master Username for 'http://10.250.0.6': euler.sanchez Password for 'http://euler.sanchez@10.250.0.6': Counting objects: 4, done. Delta compression using up to 4 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 371 bytes | 0 bytes/s, done. Total 3 (delta 0), reused 0 (delta 0) To http://10.250.0.6/enovadevelopers/capacitacion-git.git 343a08c..fd017e4 master -> master
  • 23. ¿Qué es una rama? $ git add README test.rb LICENSE $ git commit -m 'initial commit of my project' Vamos a suponer, por ejemplo, que tienes una carpeta con tres archivos, que preparas (stage) todos ellos y los confirmas (commit).
  • 24. Si haces más cambios y vuelves a confirmar, la siguiente confirmación guardará un apuntador a esta su confirmación precedente. Una rama Git es simplemente un apuntador móvil apuntando a una de esas confirmaciones. La rama por defecto de Git es la rama 'master'.
  • 25. En cada confirmación de cambios que realicemos, la rama irá avanzando automáticamente. Y la rama 'master' apuntará siempre a la última confirmación realizada. Si quieres crear una nueva rama denominada "testing". Usarás el comando 'git branch' $ git branch testing
  • 26. ¿Cómo sabe Git en qué rama estás en este momento? R = Mediante el apuntador HEAD Recordar: El comando git branch solamente crea una nueva rama, y no salta a dicha rama.
  • 27. $ git checkout testing Para saltar de una rama a otra se utiliza git checkout. Esto mueve el apuntador HEAD a la rama 'testing'
  • 28. Si ahora ejecutamos lo siguiente: $ vim programa3.php $ git commit -a -m 'Se hace un cambio'
  • 29. La rama 'testing' avanza, mientras que la rama 'master' permanece en la confirmación donde estaba cuando lanzaste el comando 'git checkout' para saltar. $ git checkout master
  • 30. Mueve el apuntador HEAD de nuevo a la rama 'master', y revierte los archivos de tu directorio de trabajo; dejándolos tal y como estaban en la última instantánea confirmada en dicha rama 'master'.
  • 31. GITLAB esta instalado en 10.250.0.6 Usuarios: francisco.escandon Password: 123456789
  • 32. GitLab is used in more than 100,000 organizations https://www.gitlab.com/