iMawe / git_github

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

EPIS UNIVERSIDAD LA SALLE
FACULTAD DE INGENIERÍAS
DEPARTAMENTO DE INGENIERÍA Y MATEMÁTICAS
CARRERA PROFESIONAL DE INGENIERÍA DE SOFTWARE
Formato: Guía de Práctica de Laboratorio / Talleres / Centros de Simulación
GUÍA DE LABORATORIO
INFORMACIÓN BÁSICA
TÍTULO DE LA PRÁCTICA:Git - GitHub
RECURSOS A UTILIZAR:
DOCENTES:
  • Richart Smith Escobedo Quispe (r.escobedo@ulasalle.edu.pe)

OBJETIVOS TEMAS Y COMPETENCIAS

OBJETIVOS

  • Aprender a manejar un sistema de control de versiones de manera colaborativa con varios usuarios

TEMAS

  • Git
  • GitHub

CONTENIDO DE LA GUÍA

MARCO CONCEPTUAL

  • Instalar Git en el ordenador

  • git init

    • Crea un nuevo proyecto local, se crean archivos en el directorio oculto .git
    git init
  • git config

    • Establece variables de configuración. Por ejemplo para los commits se necesita los datos del desarrollador. Se puede especificar el editor y hasta el tiempo que deseas almacenar tus credenciales en la cache y otras cosas más
    git config --global user.name "Richart Smith Escobedo Quispe"
    git config --global user.email r.escobedo@ulasalle.edu.pe
    git config --list
    git config user.name
    git config --global core.editor "code --wait"
    git config --global credential.helper 'cache --timeout=3600'
  • git status

    • Permite verificar el estado de los archivos
    git status
  • git add

    • Añade archivos al staging area. El punto "." agrega todos
    git add HolaMundo.java
    git add .
  • git commit

    • Sube los archivos al área de staging, en la máquina local. La opción -m permite escribir el mensaje en línea
    git commit -m "Probando el Hola Mundo"    
  • git clone

    • Clona un repositorio remoto como un repositorio local, en el cual se puede hacer push
    git clone https://github.com/rescobedoulasalle/test.git
  • git remote

    • Persigue un repositorio remoto para hacer push.
    git remote add origin https://github.com/rescobedoulasalle/test.git
  • git push

    • Permite subir archivos al repositorio remoto
    git push -u origin main    
  • git show

    • Muestra detalles del commit actual
    git show
  • git log

    • Permite ver un resumen de los commit realizados
    git log
    git log --pretty=oneline
    git log --graph --pretty=oneline --abbrev-commit --all
    git log --pretty=format:"%h - %an, %ar : %s"
    git log -p -2
    6bb6b6e - Richart Escobedo Quispe, hace 3 minutos : Git - GitHub
    6bb6b6e - Richart Escobedo Quispe, hace 12 minutos : Git - GitHub
    b36a9fd - Richart Escobedo Quispe, hace 14 minutos : Git - GitHub
    e86aac8 - Richart Escobedo Quispe, hace 22 minutos : Git - GitHub
    e58f653 - Richart Escobedo Quispe, hace 31 minutos : first commit
    5747062 - Richart Escobedo Quispe, hace 35 minutos : first commit
    
  • git diff

    • Permite comparar los cambios en los archivos
    git diff 6bb6b6e 6bb6b6e
  • git branch

    • Permite ver las ramas existentes o crea una rama alternativa al proyecto principal git branch -a
    git branch prueba1
    git branch
      * main
      prueba1
      
  • git checkout

    • Permite regresar a versiones anteriores o saltar a otra rama
    git checkout prueba1
    git branch
      main
      * prueba1
      
  • git pull

    • Permite descargar los cambios del repositorio remoto al directorio local

EJERCICIO/PROBLEMA RESUELTO POR EL DOCENTE

Primer repositorio en GitHub

  • Creamos un nuevo proyecto en GitHub

    • Nuevo Proyecto GitHub
  • Crearemos un repositorio local usando git init

    pwd
    /home/richart/ulasalle/proyecto
    git init
  • Crearemos un archivo Readme.md con contenido Markup

    echo "# Mi proyecto Git" > README.md
  • Agregaremos este archivo al staging area usando git add .

    git status
      En la rama main
    
      No hay commits todavía
    
      Archivos sin seguimiento:
      (usa "git add ..." para incluirlo a lo que se será confirmado)
      README.md
      no hay nada agregado al commit pero hay archivos sin seguimiento presentes (usa "git add" para hacerles seguimiento)
      
    git add README.md
  • Hacemos un primer commit en nuestro repositorio local

    git commit -m "Mi primer proyecto en github"
  • Asociamos el repositorio local con el repositorio remoto

    git remote add origin https://github.com/rescobedoulasalle/test.git
  • Actualizamos el repositorio remoto

    git push -u origin main
  • Ahora podemos verificar en GitHub que nuestro repositorio se actualizó con el proyecto local

    • Readme.md
  • Cree una clase Java HolaMundo.java que imprima un saludo, compílelo, ignore archivos binarios, agregue archivo al stating area, haga commit y súbalo al repositorio GitHub.

    vim HolaMundo.java
      public class HolaMundo
      {
          public static void main(String args[]) {
          
              /** */
              System.out.println ("¡Hola mundo!");
    
          }
      }
      
    java -version
      openjdk version "11.0.14" 2022-01-18
      
    javac HolaMundo.java
    java HolaMundo
      ¡Hola mundo!
      
    vim .gitignore
      *.class
      .gitignore
      
    git add HolaMundo.java
    git commit -m "Hola Mundo"
    git push -u origin main

EJERCICIOS/PROBLEMAS PROPUESTOS

  • Cree una cuenta de usuario en github.
  • Configure su cuenta de estudiante (https://education.github.com/pack).
  • Cree un nuevo proyecto personal y desarrolle el ejercicio resuelto en clase. Haga 3 commits y muestre los 3 últimos.
  • Cree un proyecto grupal para resolver el siguiente problema: Se desea crear una clase Calculator en Java, que tenga las siguientes operaciones: add, sub, mul, div, mod; estas operaciones recibirán dos enteros y devolverán un entero. (Forme grupos de 3 a 5 personas). Cree ramas para cada integrante y cada cierto tiempo una las ramas al main.

CUESTIONARIO

  • ¿Por qué Git es una herramienta importante en el curso?
  • ¿Qué conductas éticas debe promocionarse cuando se usa un Sistema de Control de Versiones?
  • ¿Qué son los entándares de codificación?

REFERENCIAS Y BIBLIOGRÁFIA RECOMENDADAS

About