====== Actividad 3 ====== ===== Git ===== * Instale git * Personalice git: git config --global user.name "Su nombre completo" git config --global user.email youremail@yourserver.com * Cree un nuevo repositorio cd ~/local/src/ mkdir my_git_repo cd my_git_repo git init * Cree un archivo prueba1 y edite su contenido con lo siguiente: Esto es una prueba en la primera línea Esto es la segunda línea Esto es la tercera línea * Observe el estatus de git en este momento: git status * Cuestionario P1: Cuál es el estado del archivo prueba1? Qué significa dicho estado? * Guarde temporalmente el estado de este archivo en git: git add prueba1 * Observe el estado de git en este momento: git status * Cuestionario P2: Cuál es el estado del archivo prueba1? Qué significa dicho estado? * Guarde permanentemente el estado de los cambios del repositorio: git commit -m "Prueba1 agregado" * Cuestionario P3: Observe el estado del git y comente qué significa. * Instale gitk * Corra el programa gitk en el directorio del repositorio. Observe detalladamente lo que ve. * Realice los siguientes cambios al archivo prueba1: Esto es una prueba en la primera línea Esto es la segunda línea modificada Esto es la tercera línea * Cuestionario P4: Observe el estado del git y comente sobre su situación actual. * Informe al git temporalmente sobre los cambios actuales del archivo prueba1 git add prueba1 * Agregue los cambios permanentemente al git * Haga una cuenta en github (internet). Debe construir una llave ssh. Para realizar esto siga la guía de este link: [[https://help.github.com/articles/generating-an-ssh-key/| ssh keys]] * Entre a su cuenta de github y cree un nuevo repositorio llamado pruebagithub. A dicho repositorio agregue el usuario de github de su compañero (debe agregar la llave pública también) y dele permisos de edición * Active la llave ssh en su computadora: ssh-add * Ambos: usted y su compañero clonen el repositorio: cd ~/local/src git clone git@github.com:usuario/pruebagithub.git ==== Compañero 1 ==== * Cree el archivo prueba1 dentro del repositorio: cd pruebagithub touch prueba1 * Agregue el siguiente contenido a dicho archivo: Esto es una prueba en la primera línea Esto es la segunda línea Esto es la tercera línea * Agregue temporalmente dicho archivo al repositorio * Agregue permanentemente dichos campos al repositorio * "Empuje" los cambios al repositorio de github git push ==== Compañero 2 ==== * Actualice el repositorio con los cambios presentes en github: git pull * Cuestionario P5: Entre los dos compañeros utilizando git status y gitk expliquen lo que sucedió. ==== Compañero 1 ==== * Edite el archivo prueba1 de la siguiente forma: Esto es una prueba en la primera línea Esto es la segunda línea modificado por compañero 1 Esto es la tercera línea * Agregue los cambios temporalmente y permanentemente en su repositorio * Envié los cambios a github ==== Compañero 2 ==== * Edite el archivo prueba1 de la siguiente forma: Esto es una prueba en la primera línea Esto es la segunda línea modificado por compañero 2 Esto es la tercera línea * Agregue los cambios temporalmente y permanentemente en su repositorio * Envié los cambios a github. * Cuestionario P6: Ambos compañeros mencionen el error ocurrido y explique qué sucede en este momento. * Edite el archivo de la siguiente forma: Esto es una prueba en la primera línea Esto es la segunda línea modificado por compañero 1 y 2 Esto es la tercera línea * Agregue temporalmente y permanentemente en el repositorio * Envié los cambios a github ==== Compañero 1 ==== * Actualice el repositorio desde github * Cuestionario P7: Ambos compañeros comenten el estado del repositorio en ambas computadoras. Utilicen git status y gitk para esto. ==== Ambos compañeros ==== * Realicen cambios a prueba1 de la siguiente forma: Esto es una prueba en la primera línea Esto es la segunda línea modificado por compañero 1 y 2 Esto es la tercera línea Esta línea fue un error fatal agregarla!!!! * Agregue temporalmente el archivo (git add prueba1) * Cuestionario P8: Investigue en Internet como puede "anular" o "deshacer" estos cambios. Anote el comando a utilizar. * Vuelva a editar el archivo como aparece arriba * Agregue temporalmente y permanentemente el archivo (git add prueba1; git commit -m "commit incorrecto") * Cuestionario P9: Investigue en Internet como puede "anular" o "deshacer" estos cambios. Anote el comando a utilizar. * Vuelva a editar el archivo como aparece arriba * Agregue temporalmente y permanentemente el archivo (git add prueba1; git commit -m "commit incorrecto") * Envié los cambios al repositorio de github * Cuestionario P10: Investigue en Internet como puede "anular" o "deshacer" estos cambios. Anote el comando o comandos a utilizar. * Cuestionario P11: Qué tipos de archivos pueden ser parte de un repositorio git y cuáles no deberían ser parte? Por qué? (Espere las explicaciones del profesor) ==== Recursos ==== [[https://git-scm.com/book/en/v2|Libro de git]] [[http://chris.beams.io/posts/git-commit/|How to write good commit messages]] ===== Makefile ===== * Explicación en clase {{:teaching:ie0117:makefiles.tar.gz|makefile example}} * Cuestionario P12: Por qué se usan los Makefiles? Qué resuelven? ===== Latex ===== Para poder usar Latex es necesario instalar los siguientes paquetes: texlive-base texlive-bibtex-extra texlive-latex-base texlive-lang-spanish. Una vez instalados, es posible generar un pdf a partir del archivo tex con el comando pdflatex ejemplo_latex.tex Descargue [[https://arcoslab.org/owncloud/s/Bge4bsLq5nZhJ8A|aqui]] un ejemplo de un reporte simple hecho con Latex. Descargue [[https://arcoslab.org/owncloud/s/EwoHl229gg1kPnL|aqui]] un ejemplo de un una presentación hecha con Beamer. Compruebe que puede compilar ambos archivos.