SlideShare une entreprise Scribd logo
1  sur  18
Universidad Tecnológica de Panamá
Facultad de Ingeniería de Sistemas Computacionales
Maestría en Seguridad de la Información
Aplicaciones Seguras
Profesor Xiegdel Miranda
Presentado por: Jose Moreno, Andrea Munoz y
Carlos Rodriguez
GIT/GITHUB
Contenido
1 Control de versiones
2 Tipos
3 Git
4 Primeros pasos
5 Utilidades básicas
6 Branching
7 Otros commando utiles
8 GitHub
9 Demo
Control de versiones
Sistema que permite registrar los cambios en un archivo o conjunto de archivos con el
tiempo para poder verificar versiones especificas mas adelante. Para diseñadores web o
programadores en general es una de las herramientas mas considerables a utilizar.
Beneficios que ofrece:
❖ Revertir archivos a un estado previo
❖ Revertir proyectos enteros a estados previos
❖ Comparacion de cambios en el tiempo
❖ Verificar si lo que se modifico podria ser causa de
un problema.
❖ Si se enredan la cosas o se pierden con facilidad,
se pueden recuperar.
Tipos
• Es la elección de muchos programadores de copiar los
archivos fuentes de algún proyecto o proyecto entero
a carpetas fechadas y numeradas con la versión del
proyecto o archivo contenido.
• Es un enfoque simple y tiende a ser muy propenso a
errores.
• Es muy común olvidar en que directorio se esta
trabajando y escribir sobre los archivos equivocados o
copiar archivos que no eran.
Control de versiones local
Tipos
• Surge por la necesitad de que en el Proyecto se disponga
de la colaboración de un grupo de desarrolladores para
que realicen distintas iniciativas de programación.
• Consiste generalmente en un servidor con el conjunto de
componentes de programacion de uno o varios proyectos,
a los que diferentes usuarios tienen acceso. En muchos
casos tomar un componente significa extraer una copia del
original y bloquear el original, clasico para back-end.
• Los administradores tiene control de actividades de los
desarrolladores
• La caida del servidor significa perdida de trabajo
colaborativo.
Control de versiones centralizado
Tipos
• Aquí los clientes no simplemente se conectan para tener
acceso a un grupo de archivos de Proyecto, sino que este
se copia completamente a los terminales de los clientes,
de manera que el Sistema colabora para que se copie el
Proyecto nuevamente al servidor y restaurarlo. Cada clon
en los clientes es una copia completa del proyecto.
• Tener varios repositorios de trabajo permite la
colaboracion con diferentes grupos de trabajo al mismo
tiempo en el mismo Proyecto.
• Permite varios flujos de trabajo que no son posibles en
sistemas centralizados
Control de versiones distribuido
Git
• Al igual que con muchas cosas en la vida, Git comenzó con un poco
de destrucción creativa y encendida polémica.
• El núcleo de Linux es un proyecto de software de código abierto de
alcance bastante grande y en 2002 comenzó a usar un DVCS
patentado llamado BitKeeper.
• En 2005 se rompió la relación de la comunidad que desarrollaba
Linux y bitKeeper
• Linus Torvalds empezó un proyecto para desarrollar una herramienta
propia basada en algunas características de bitkeeper.
• Sus esfuerzos se enfocaron en una herramienta veloz, de simple
diseño, desarrollo no lineal y capaz de manejar grandes proyectos.
Historia
Git
• La forma en que modela los datos, ya que otros guardan
solo información de un conjunto de archivos y los
cambios realizados en cada uno con el tiempo. En
cambio Git trabaja cada vez que se confirma o se guarda
un Proyecto, a su vez guarda una imagen de todos los
archivos y almacena una referencia de esa imagen.
• Si un archivo no ha cambiado, no guarda el archive, sino
un enlace al archivo anterior que ya ha modificado.
• Casi todas las operaciones son locales, ya que solo
necesita de archivos locales y de recursos para operar,
por lo general no necesita informacion de otro de equipo
en la red.
Diferencias y características vs otros CVS
Git
• Es posible trabajar fuera de línea, y luego al
conectarse a red simplemente seria para recargar el
trabajo entre estaciones.
• Antes de guardarse cualquier archivo o enlace estos
pasan por un revisado donde se calcula a bajo nivel
el hash del archivo guardado (tipo SHA-1). Git
almacena todo por valor de hash y no por nombre
de archivo.
• Guarda solo datos, que hace possible que lo cambios
puedan ser desechos o borrar algun componente
que no se ha confirmado el guardado de cambios.
Diferencias y características vs otros CVS
Git
• Confirmado: significa que los datos están
almacenados de forma segura en la base de
datos local. Componentes que poseen la
ultima versión guardada.
• Modificado: archivos que se le han aplicado
cambios que no han sido confirmados en la
base de datos aun.
• Por Etapa: significa que se ha marcado un
archivo modificado para ser confirmado.
3 Estados para los archivos
Primeros pasos (Linux)
Instalar con:
sudo apt-get install git
Crear una cuenta en https://github.com/ y
obtener username y el e-mail usado.
Configurar con la cuenta GitHub
git config --global user.name “user_name”
git config --global user.email “email”
Revisar la configuración con
git config --list
Instalación Ubuntu
Utilidades básicas(Linux)
Se crea un repositorio local con
Git Init ProyectoCMR
Descargar un software que maneje FTP
Filezilla
Nos conectamos por ssh para crear una carpeta
de proyecto en el servidor llamada ProyectoCMR
ssh user@aplicaciones.morenojose.com
cd aplicaciones.morenojose.com
mkdir ProyectoCMR
Crear archivo o proyecto localmente
y subirlas al servidor
Usamos Filezilla y colocamos un Proyecto
web y se puede accesar con:
aplicaciones.morenojose.com/ProyectoC
MR
En la maquina cliente colocarse en la
carpeta htdocs y creo la carpeta
ProyectoCMR.
Entro a ProyectoCMR e introduzco el
commando git para importar el proyecto
git clone
git+ssh://user@aplicaciones.morenojose
.com/home/user/aplicaciones.morenojo
se.com/ProyectoCMR
Utilidades básicas(Linux)
Crear una carpeta de Proyecto en un hosting:
aplicaciones.morenojose.com
Se crea un archive para luego subirlo con vi o
nano:
vi nombre_archivo
Se agrega el archivo aql índice de Git con:
Git add nombre_archvio
Colocar Proyecto en servidor y
extraer copia al cliente
Se agrega el Proyecto a la base de datos
Git commit –m “add proyectoCMR”
Branching
El branching es una utilidad que permite crear
bifurcaciones del Proyecto master, útil cuando se
deben realizar dos proyectos sobre un producto final.
Se puede crear una bifurcacion de:
Git branch ProyectoCMRbf1 (si agrego –b antes de
nombre de Proyecto, se cambia a la nueva
bifurcacion)
Que es una bifurcacion de ProyectoCMR original y se
puede cambiar nuevamente al Proyecto original con.
Git checkout ProyectoCMR
Otros comando útiles
Comando Utilidad
Git status Describe el estado de los archivos. Distingue entre nuevos archivos y los estados
que pueden estar como modificado o preparado para ser confirmado.
Git status --s/short Similar al anterior describe de forma resumida el estado de los archivos.
Git commit -v “msg” Permite revisar que cambios se están enviando en el archive que esta siendo
confirmado.
Git rm archivo Permite borrar un archivo del Proyecto.
Git mv arch1 arch2 Permite renombrar y mover archivos.
Git log -p -#num Permite generar el log de archivos que han sido confirmados, con la opción p se
puede ver la diferencia de cada confirmación y #num limita el numero de
diferencias a confirmar.
Git commit --amend Permite volver a colocar una archive como confirmado. Útil si se quiere re-pasar
un archivo al Proyecto final.
Otros comando útiles
Comando Utilidad
Git reset archivo Permite cambiar el estado de un archivo de “listo para ser confirmado” a
modificado
Git checkout --
archivo
Permite eliminar los cambios realizados a un archivo, dejándolo en su estado
anterior.
Git push proy_remote
proy_bifurc1
Permite publicar en el servidor remoto los cambios actualmente realizados en el
proyecto local.
Git tag –l “ver.1.0.0” Permite colocar un numero de versión a la bifurcación del proyecto que se esta
trabajando.
Git config --global
alias.co checkout
Permite crear atajos que reducen la escritura de código, en el ejemplo propuesto
en lugar de digitar “git checkout” solo debe digitar “git co”
Bibliografía
1. How do I set up a Git Repository
Consultado el 5 de agosto de 2016
Disponible en: https://help.dreamhost.com/hc/en-us/articles/216445317-How-do-I-set-up-a-Git-repository-
2. How to push to Git repository to an external server
Consultado el 5 de agosto de 2016
Disponible en: https://help.dreamhost.com/hc/en-us/articles/216445197
1. Getting Started - First - Time - Git Setup
Consultado el 6 de agosto de 2016
Disponible en: https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup
1. Centralized Workflow
Consultado el 6 de agosto de 2016
Disponible en: https://www.atlassian.com/git/tutorials/comparing-workflows/centralized-workflow
5. Installing and using Git and GitHub on Ubuntu: A beginner's guide
Consultado el 7 de agosto de 2016.
Disponible en: https://www.howtoforge.com/tutorial/install-git-and-github-on-ubuntu-14.04/
GRACIAS !

Contenu connexe

Tendances

Git: un enfoque práctico
Git: un enfoque prácticoGit: un enfoque práctico
Git: un enfoque prácticoPatxi Gortázar
 
Mini-tutorial de git
Mini-tutorial de gitMini-tutorial de git
Mini-tutorial de gitAntonio Ognio
 
WorkShop: Introducción a GIT
WorkShop: Introducción a GITWorkShop: Introducción a GIT
WorkShop: Introducción a GITKeopx
 
Control de versiones con git
Control de versiones con gitControl de versiones con git
Control de versiones con gitEudris Cabrera
 
05 intro-git-github-heroku-v4
05 intro-git-github-heroku-v405 intro-git-github-heroku-v4
05 intro-git-github-heroku-v4fyomaira
 
Git + Github - Betabeers Córdoba XII
Git + Github - Betabeers Córdoba XIIGit + Github - Betabeers Córdoba XII
Git + Github - Betabeers Córdoba XIIquaip
 
Curso Kubernetes CodeURJC
Curso Kubernetes CodeURJCCurso Kubernetes CodeURJC
Curso Kubernetes CodeURJCMicael Gallego
 
Configurando un repositorio de git hub usando netbeans ide
Configurando un repositorio de git hub usando netbeans ideConfigurando un repositorio de git hub usando netbeans ide
Configurando un repositorio de git hub usando netbeans ideferosorno
 
Git: flujos de trabajo y herramientas para trabajo colaborativo
Git: flujos de trabajo y herramientas para trabajo colaborativoGit: flujos de trabajo y herramientas para trabajo colaborativo
Git: flujos de trabajo y herramientas para trabajo colaborativoAprende Git
 
El git nuestro de cada dia
El git nuestro de cada diaEl git nuestro de cada dia
El git nuestro de cada diaAlan Descoins
 
Gestión del software con Maven y Jenkins
Gestión del software con Maven y JenkinsGestión del software con Maven y Jenkins
Gestión del software con Maven y JenkinsBEEVA_es
 
Continuous Delivery Un caso de estudio
Continuous Delivery Un caso de estudioContinuous Delivery Un caso de estudio
Continuous Delivery Un caso de estudioOsvaldo
 

Tendances (20)

Git: un enfoque práctico
Git: un enfoque prácticoGit: un enfoque práctico
Git: un enfoque práctico
 
Introducción a git y git hub
Introducción a git y git hubIntroducción a git y git hub
Introducción a git y git hub
 
Mini-tutorial de git
Mini-tutorial de gitMini-tutorial de git
Mini-tutorial de git
 
Git: control de versiones
Git: control de versionesGit: control de versiones
Git: control de versiones
 
Control de versiones con Git
Control de versiones con GitControl de versiones con Git
Control de versiones con Git
 
Git / Guía Básica
Git / Guía BásicaGit / Guía Básica
Git / Guía Básica
 
Mercurial
MercurialMercurial
Mercurial
 
WorkShop: Introducción a GIT
WorkShop: Introducción a GITWorkShop: Introducción a GIT
WorkShop: Introducción a GIT
 
Jenkins pipeline
Jenkins pipelineJenkins pipeline
Jenkins pipeline
 
Control de versiones con git
Control de versiones con gitControl de versiones con git
Control de versiones con git
 
Fundamentos de GIt y Github
Fundamentos de GIt y GithubFundamentos de GIt y Github
Fundamentos de GIt y Github
 
Un modelo exitoso para git
Un modelo exitoso para gitUn modelo exitoso para git
Un modelo exitoso para git
 
05 intro-git-github-heroku-v4
05 intro-git-github-heroku-v405 intro-git-github-heroku-v4
05 intro-git-github-heroku-v4
 
Git + Github - Betabeers Córdoba XII
Git + Github - Betabeers Córdoba XIIGit + Github - Betabeers Córdoba XII
Git + Github - Betabeers Córdoba XII
 
Curso Kubernetes CodeURJC
Curso Kubernetes CodeURJCCurso Kubernetes CodeURJC
Curso Kubernetes CodeURJC
 
Configurando un repositorio de git hub usando netbeans ide
Configurando un repositorio de git hub usando netbeans ideConfigurando un repositorio de git hub usando netbeans ide
Configurando un repositorio de git hub usando netbeans ide
 
Git: flujos de trabajo y herramientas para trabajo colaborativo
Git: flujos de trabajo y herramientas para trabajo colaborativoGit: flujos de trabajo y herramientas para trabajo colaborativo
Git: flujos de trabajo y herramientas para trabajo colaborativo
 
El git nuestro de cada dia
El git nuestro de cada diaEl git nuestro de cada dia
El git nuestro de cada dia
 
Gestión del software con Maven y Jenkins
Gestión del software con Maven y JenkinsGestión del software con Maven y Jenkins
Gestión del software con Maven y Jenkins
 
Continuous Delivery Un caso de estudio
Continuous Delivery Un caso de estudioContinuous Delivery Un caso de estudio
Continuous Delivery Un caso de estudio
 

Similaire à Presentacion #2 github Aplicaciones Seguras

Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando GitHugo Gilmar Erazo
 
GuiaPrincipiantesGitHubrfuenzalidadev.pptx
GuiaPrincipiantesGitHubrfuenzalidadev.pptxGuiaPrincipiantesGitHubrfuenzalidadev.pptx
GuiaPrincipiantesGitHubrfuenzalidadev.pptxfuenzalidarodrigo
 
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDAD
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDADTodo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDAD
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDADDIEGOALBERTOENRIQUEZ4
 
Induccion0_GitLab.pptx
Induccion0_GitLab.pptxInduccion0_GitLab.pptx
Induccion0_GitLab.pptxssuser3ff40a
 
Introducción a Git
Introducción a GitIntroducción a Git
Introducción a GitManuel Ceron
 
Desarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nubeDesarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nubeDaniel Cruz
 
[ES] Sistemas de control de versiones
[ES] Sistemas de control de versiones[ES] Sistemas de control de versiones
[ES] Sistemas de control de versionesEudris Cabrera
 
Git y Github basico.pptx
Git y Github basico.pptxGit y Github basico.pptx
Git y Github basico.pptxssuser36d4d3
 
Flujos de trabajo para un desarrollador web frontend
Flujos de trabajo para un desarrollador web frontendFlujos de trabajo para un desarrollador web frontend
Flujos de trabajo para un desarrollador web frontendLeonidas Esteban González
 
Introducción al desarrollo de software en comunidad con forja de software y git
Introducción al desarrollo de software en comunidad con forja de software y gitIntroducción al desarrollo de software en comunidad con forja de software y git
Introducción al desarrollo de software en comunidad con forja de software y gitDrPantera
 

Similaire à Presentacion #2 github Aplicaciones Seguras (20)

Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando Git
 
GuiaPrincipiantesGitHubrfuenzalidadev.pptx
GuiaPrincipiantesGitHubrfuenzalidadev.pptxGuiaPrincipiantesGitHubrfuenzalidadev.pptx
GuiaPrincipiantesGitHubrfuenzalidadev.pptx
 
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDAD
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDADTodo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDAD
Todo sobre el mundo del GIT-INTEGRACION-CONCEPTOS-USABILIDAD
 
Aprendiendo GIT
Aprendiendo GITAprendiendo GIT
Aprendiendo GIT
 
Induccion0_GitLab.pptx
Induccion0_GitLab.pptxInduccion0_GitLab.pptx
Induccion0_GitLab.pptx
 
Introducción a Git
Introducción a GitIntroducción a Git
Introducción a Git
 
Git y github
Git y githubGit y github
Git y github
 
Desarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nubeDesarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nube
 
Control de versiones
Control de versionesControl de versiones
Control de versiones
 
[ES] Sistemas de control de versiones
[ES] Sistemas de control de versiones[ES] Sistemas de control de versiones
[ES] Sistemas de control de versiones
 
Introducción a Git
Introducción a GitIntroducción a Git
Introducción a Git
 
Git y Github basico.pptx
Git y Github basico.pptxGit y Github basico.pptx
Git y Github basico.pptx
 
Taller GitHub
Taller GitHubTaller GitHub
Taller GitHub
 
Tallerintroducciongit
TallerintroducciongitTallerintroducciongit
Tallerintroducciongit
 
Dependency Managers iOS
Dependency Managers iOSDependency Managers iOS
Dependency Managers iOS
 
Dependency Managers
Dependency ManagersDependency Managers
Dependency Managers
 
Flujos de trabajo para un desarrollador web frontend
Flujos de trabajo para un desarrollador web frontendFlujos de trabajo para un desarrollador web frontend
Flujos de trabajo para un desarrollador web frontend
 
Replacing SVN with Git for managers
Replacing SVN with Git for managersReplacing SVN with Git for managers
Replacing SVN with Git for managers
 
ATICA DevOps
ATICA DevOpsATICA DevOps
ATICA DevOps
 
Introducción al desarrollo de software en comunidad con forja de software y git
Introducción al desarrollo de software en comunidad con forja de software y gitIntroducción al desarrollo de software en comunidad con forja de software y git
Introducción al desarrollo de software en comunidad con forja de software y git
 

Plus de José Moreno

Android reversing 101.pdf
Android reversing 101.pdfAndroid reversing 101.pdf
Android reversing 101.pdfJosé Moreno
 
Ransomware Hidden Tear
Ransomware Hidden TearRansomware Hidden Tear
Ransomware Hidden TearJosé Moreno
 
Seguridad en SIstemas Operativos *Nix
Seguridad en SIstemas Operativos *NixSeguridad en SIstemas Operativos *Nix
Seguridad en SIstemas Operativos *NixJosé Moreno
 
Seguridad Perimetral
Seguridad PerimetralSeguridad Perimetral
Seguridad PerimetralJosé Moreno
 
Correlacionador de Eventos OSSIM
Correlacionador de Eventos OSSIMCorrelacionador de Eventos OSSIM
Correlacionador de Eventos OSSIMJosé Moreno
 
Forensia en movil
Forensia en movil Forensia en movil
Forensia en movil José Moreno
 
Backbox Distribución deriva de Ubuntu
Backbox Distribución deriva de UbuntuBackbox Distribución deriva de Ubuntu
Backbox Distribución deriva de UbuntuJosé Moreno
 
Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0José Moreno
 
Hardening Telnet ssh final
Hardening Telnet ssh finalHardening Telnet ssh final
Hardening Telnet ssh finalJosé Moreno
 
Protección de Sitios Web con WAF Lógico
Protección de Sitios Web con WAF LógicoProtección de Sitios Web con WAF Lógico
Protección de Sitios Web con WAF LógicoJosé Moreno
 
Laboratorio 7 mod security - evasive - qos
Laboratorio 7   mod security - evasive - qosLaboratorio 7   mod security - evasive - qos
Laboratorio 7 mod security - evasive - qosJosé Moreno
 
Lab 3 cifrado criptografia
Lab 3   cifrado criptografiaLab 3   cifrado criptografia
Lab 3 cifrado criptografiaJosé Moreno
 
Hardening en-nix-asegurar-un-ftp-server
Hardening en-nix-asegurar-un-ftp-serverHardening en-nix-asegurar-un-ftp-server
Hardening en-nix-asegurar-un-ftp-serverJosé Moreno
 

Plus de José Moreno (18)

Android reversing 101.pdf
Android reversing 101.pdfAndroid reversing 101.pdf
Android reversing 101.pdf
 
Ransomware Hidden Tear
Ransomware Hidden TearRansomware Hidden Tear
Ransomware Hidden Tear
 
Bash Ransomware
Bash RansomwareBash Ransomware
Bash Ransomware
 
Seguridad Móvil
Seguridad MóvilSeguridad Móvil
Seguridad Móvil
 
Seguridad en SIstemas Operativos *Nix
Seguridad en SIstemas Operativos *NixSeguridad en SIstemas Operativos *Nix
Seguridad en SIstemas Operativos *Nix
 
Honey Pots
Honey PotsHoney Pots
Honey Pots
 
Seguridad Perimetral
Seguridad PerimetralSeguridad Perimetral
Seguridad Perimetral
 
Correlacionador de Eventos OSSIM
Correlacionador de Eventos OSSIMCorrelacionador de Eventos OSSIM
Correlacionador de Eventos OSSIM
 
Forensia en movil
Forensia en movil Forensia en movil
Forensia en movil
 
Artefactos linux
Artefactos linuxArtefactos linux
Artefactos linux
 
MEAN Stack
MEAN StackMEAN Stack
MEAN Stack
 
Backbox Distribución deriva de Ubuntu
Backbox Distribución deriva de UbuntuBackbox Distribución deriva de Ubuntu
Backbox Distribución deriva de Ubuntu
 
Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0
 
Hardening Telnet ssh final
Hardening Telnet ssh finalHardening Telnet ssh final
Hardening Telnet ssh final
 
Protección de Sitios Web con WAF Lógico
Protección de Sitios Web con WAF LógicoProtección de Sitios Web con WAF Lógico
Protección de Sitios Web con WAF Lógico
 
Laboratorio 7 mod security - evasive - qos
Laboratorio 7   mod security - evasive - qosLaboratorio 7   mod security - evasive - qos
Laboratorio 7 mod security - evasive - qos
 
Lab 3 cifrado criptografia
Lab 3   cifrado criptografiaLab 3   cifrado criptografia
Lab 3 cifrado criptografia
 
Hardening en-nix-asegurar-un-ftp-server
Hardening en-nix-asegurar-un-ftp-serverHardening en-nix-asegurar-un-ftp-server
Hardening en-nix-asegurar-un-ftp-server
 

Dernier

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxRogerPrieto3
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 

Dernier (15)

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptx
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 

Presentacion #2 github Aplicaciones Seguras

  • 1. Universidad Tecnológica de Panamá Facultad de Ingeniería de Sistemas Computacionales Maestría en Seguridad de la Información Aplicaciones Seguras Profesor Xiegdel Miranda Presentado por: Jose Moreno, Andrea Munoz y Carlos Rodriguez GIT/GITHUB
  • 2. Contenido 1 Control de versiones 2 Tipos 3 Git 4 Primeros pasos 5 Utilidades básicas 6 Branching 7 Otros commando utiles 8 GitHub 9 Demo
  • 3. Control de versiones Sistema que permite registrar los cambios en un archivo o conjunto de archivos con el tiempo para poder verificar versiones especificas mas adelante. Para diseñadores web o programadores en general es una de las herramientas mas considerables a utilizar. Beneficios que ofrece: ❖ Revertir archivos a un estado previo ❖ Revertir proyectos enteros a estados previos ❖ Comparacion de cambios en el tiempo ❖ Verificar si lo que se modifico podria ser causa de un problema. ❖ Si se enredan la cosas o se pierden con facilidad, se pueden recuperar.
  • 4. Tipos • Es la elección de muchos programadores de copiar los archivos fuentes de algún proyecto o proyecto entero a carpetas fechadas y numeradas con la versión del proyecto o archivo contenido. • Es un enfoque simple y tiende a ser muy propenso a errores. • Es muy común olvidar en que directorio se esta trabajando y escribir sobre los archivos equivocados o copiar archivos que no eran. Control de versiones local
  • 5. Tipos • Surge por la necesitad de que en el Proyecto se disponga de la colaboración de un grupo de desarrolladores para que realicen distintas iniciativas de programación. • Consiste generalmente en un servidor con el conjunto de componentes de programacion de uno o varios proyectos, a los que diferentes usuarios tienen acceso. En muchos casos tomar un componente significa extraer una copia del original y bloquear el original, clasico para back-end. • Los administradores tiene control de actividades de los desarrolladores • La caida del servidor significa perdida de trabajo colaborativo. Control de versiones centralizado
  • 6. Tipos • Aquí los clientes no simplemente se conectan para tener acceso a un grupo de archivos de Proyecto, sino que este se copia completamente a los terminales de los clientes, de manera que el Sistema colabora para que se copie el Proyecto nuevamente al servidor y restaurarlo. Cada clon en los clientes es una copia completa del proyecto. • Tener varios repositorios de trabajo permite la colaboracion con diferentes grupos de trabajo al mismo tiempo en el mismo Proyecto. • Permite varios flujos de trabajo que no son posibles en sistemas centralizados Control de versiones distribuido
  • 7. Git • Al igual que con muchas cosas en la vida, Git comenzó con un poco de destrucción creativa y encendida polémica. • El núcleo de Linux es un proyecto de software de código abierto de alcance bastante grande y en 2002 comenzó a usar un DVCS patentado llamado BitKeeper. • En 2005 se rompió la relación de la comunidad que desarrollaba Linux y bitKeeper • Linus Torvalds empezó un proyecto para desarrollar una herramienta propia basada en algunas características de bitkeeper. • Sus esfuerzos se enfocaron en una herramienta veloz, de simple diseño, desarrollo no lineal y capaz de manejar grandes proyectos. Historia
  • 8. Git • La forma en que modela los datos, ya que otros guardan solo información de un conjunto de archivos y los cambios realizados en cada uno con el tiempo. En cambio Git trabaja cada vez que se confirma o se guarda un Proyecto, a su vez guarda una imagen de todos los archivos y almacena una referencia de esa imagen. • Si un archivo no ha cambiado, no guarda el archive, sino un enlace al archivo anterior que ya ha modificado. • Casi todas las operaciones son locales, ya que solo necesita de archivos locales y de recursos para operar, por lo general no necesita informacion de otro de equipo en la red. Diferencias y características vs otros CVS
  • 9. Git • Es posible trabajar fuera de línea, y luego al conectarse a red simplemente seria para recargar el trabajo entre estaciones. • Antes de guardarse cualquier archivo o enlace estos pasan por un revisado donde se calcula a bajo nivel el hash del archivo guardado (tipo SHA-1). Git almacena todo por valor de hash y no por nombre de archivo. • Guarda solo datos, que hace possible que lo cambios puedan ser desechos o borrar algun componente que no se ha confirmado el guardado de cambios. Diferencias y características vs otros CVS
  • 10. Git • Confirmado: significa que los datos están almacenados de forma segura en la base de datos local. Componentes que poseen la ultima versión guardada. • Modificado: archivos que se le han aplicado cambios que no han sido confirmados en la base de datos aun. • Por Etapa: significa que se ha marcado un archivo modificado para ser confirmado. 3 Estados para los archivos
  • 11. Primeros pasos (Linux) Instalar con: sudo apt-get install git Crear una cuenta en https://github.com/ y obtener username y el e-mail usado. Configurar con la cuenta GitHub git config --global user.name “user_name” git config --global user.email “email” Revisar la configuración con git config --list Instalación Ubuntu
  • 12. Utilidades básicas(Linux) Se crea un repositorio local con Git Init ProyectoCMR Descargar un software que maneje FTP Filezilla Nos conectamos por ssh para crear una carpeta de proyecto en el servidor llamada ProyectoCMR ssh user@aplicaciones.morenojose.com cd aplicaciones.morenojose.com mkdir ProyectoCMR Crear archivo o proyecto localmente y subirlas al servidor Usamos Filezilla y colocamos un Proyecto web y se puede accesar con: aplicaciones.morenojose.com/ProyectoC MR En la maquina cliente colocarse en la carpeta htdocs y creo la carpeta ProyectoCMR. Entro a ProyectoCMR e introduzco el commando git para importar el proyecto git clone git+ssh://user@aplicaciones.morenojose .com/home/user/aplicaciones.morenojo se.com/ProyectoCMR
  • 13. Utilidades básicas(Linux) Crear una carpeta de Proyecto en un hosting: aplicaciones.morenojose.com Se crea un archive para luego subirlo con vi o nano: vi nombre_archivo Se agrega el archivo aql índice de Git con: Git add nombre_archvio Colocar Proyecto en servidor y extraer copia al cliente Se agrega el Proyecto a la base de datos Git commit –m “add proyectoCMR”
  • 14. Branching El branching es una utilidad que permite crear bifurcaciones del Proyecto master, útil cuando se deben realizar dos proyectos sobre un producto final. Se puede crear una bifurcacion de: Git branch ProyectoCMRbf1 (si agrego –b antes de nombre de Proyecto, se cambia a la nueva bifurcacion) Que es una bifurcacion de ProyectoCMR original y se puede cambiar nuevamente al Proyecto original con. Git checkout ProyectoCMR
  • 15. Otros comando útiles Comando Utilidad Git status Describe el estado de los archivos. Distingue entre nuevos archivos y los estados que pueden estar como modificado o preparado para ser confirmado. Git status --s/short Similar al anterior describe de forma resumida el estado de los archivos. Git commit -v “msg” Permite revisar que cambios se están enviando en el archive que esta siendo confirmado. Git rm archivo Permite borrar un archivo del Proyecto. Git mv arch1 arch2 Permite renombrar y mover archivos. Git log -p -#num Permite generar el log de archivos que han sido confirmados, con la opción p se puede ver la diferencia de cada confirmación y #num limita el numero de diferencias a confirmar. Git commit --amend Permite volver a colocar una archive como confirmado. Útil si se quiere re-pasar un archivo al Proyecto final.
  • 16. Otros comando útiles Comando Utilidad Git reset archivo Permite cambiar el estado de un archivo de “listo para ser confirmado” a modificado Git checkout -- archivo Permite eliminar los cambios realizados a un archivo, dejándolo en su estado anterior. Git push proy_remote proy_bifurc1 Permite publicar en el servidor remoto los cambios actualmente realizados en el proyecto local. Git tag –l “ver.1.0.0” Permite colocar un numero de versión a la bifurcación del proyecto que se esta trabajando. Git config --global alias.co checkout Permite crear atajos que reducen la escritura de código, en el ejemplo propuesto en lugar de digitar “git checkout” solo debe digitar “git co”
  • 17. Bibliografía 1. How do I set up a Git Repository Consultado el 5 de agosto de 2016 Disponible en: https://help.dreamhost.com/hc/en-us/articles/216445317-How-do-I-set-up-a-Git-repository- 2. How to push to Git repository to an external server Consultado el 5 de agosto de 2016 Disponible en: https://help.dreamhost.com/hc/en-us/articles/216445197 1. Getting Started - First - Time - Git Setup Consultado el 6 de agosto de 2016 Disponible en: https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup 1. Centralized Workflow Consultado el 6 de agosto de 2016 Disponible en: https://www.atlassian.com/git/tutorials/comparing-workflows/centralized-workflow 5. Installing and using Git and GitHub on Ubuntu: A beginner's guide Consultado el 7 de agosto de 2016. Disponible en: https://www.howtoforge.com/tutorial/install-git-and-github-on-ubuntu-14.04/