Si has realizado la práctica1, y tienes la clave SSH configurada, puedes ir directamente al paso 2.
Crear una cuenta en GitHub.
Para ello, puedes usar tu correo personal, el de @correo.ugr.es o el de @go.ugr.es.
Hay varias maneras de conectarte desde tu ordenador a GitHub. Si utilizas un navegador, usarás tu usuario y contraseña. Desde el terminal, lo más cómodo es utilizar una clave SSH. Puedes crear una nueva si no tienes, o reutilizar una ya existente. Tienes toda la información para realizar la configuración en: Conectar a GitHub con SSH
Cada estudiante debe tener su propia copia del repositorio para poder trabajar sobre ella. En adelante, a tu copia la llamaremos origin, y al repositorio original de la asignatura lo llamaremos upstream (NOTA: Estas son convenciones que la mayoría de los desarrolladores usan, pero los puedes llamar como quieras).
La forma usual de crear tu copia del repositorio es realizando un fork. Sin embargo, dado que realizar un fork de un repositorio con visibilidad pública obliga al que la copia sea también pública, nosotros usaremos un procedimiento diferente que nos permite que nuestra copia del repositorio sea privada.
Para realizar la copia, una vez que tengas creada tu cuenta en GitHub, haz click en https://github.com/new/import y rellena tal y como se ve en la imagen de abajo. El repositorio que quieres importar es https://github.com/ugr-ccia-IA/practica2
. ¡Asegúrate de que tu repositorio es privado!
Una vez hecho el paso anterior, tendrás tu repositorio personal de la práctica1 en GitHub; puedes descargarlo a tu ordenador usando:
git clone git@github.com:TU_USUARIO_GITHUB/practica2.git
(si no has configurado tu clave SSH, esto no funcionará).
Es el momento de empezar a modificar ficheros. Abre el fichero README.md (este fichero) y busca la línea 89. Debes cambiar el enlace que usa el botón para que apunte a tu repositorio y no al de la asignatura.
Una vez lo hayas modificado, guarda el fichero, y ejecuta los siguientes comandos en el terminal estando dentro de la carpeta practica2
:
git add .
git commit -m "Cambiando el enlace del botón"
git push origin main
Los tres comandos anteriores le indican a git que 1) queremos guardar una nueva versión con todos los ficheros modificados de la carpeta, 2) que haga esa versión y le ponga el comentario "Cambiando el enlace del botón", y 3) que envíe esta nueva versión a la copia de nuestro repositorio alojada en GitHub.
Este proceso es el que debes repetir cada vez que vayas avanzando en la implementación de la práctica: add, commit, push.
Aunque tu repositorio y el de la asignatura (recuerda que los conocemos por origin y upstream respectivamente) sean independientes, nos va a interesar que estén enlazados. De esta forma, podrás aplicar fácilmente sobre tu repositorio (origin) cualquier actualización que los profesores realicemos en upstream. Para enlazarlos, ejecuta lo siguiente dentro de la carpeta de tu repositorio:
git remote add upstream git@github.com:ugr-ccia-IA/practica2.git
Una vez tengas los repositiorios enlazados, lo único que debes hacer para aplicar posibles cambios en el repositorio de la asignatura en tu repositorio (cambios de upstream en origin) es: git pull upstream main
Hacer esto no sobreescribirá tus avances en la implementación de la práctica, puesto que tú no deberías haber modificado ninguna parte del código diferente a la que se indica en el guión.
Si quieres que esos cambios también se guarden en github, a continuación ejecuta: git push origin main
Si quieres saber más sobre Git y GitHub, en Internet existen multitud de recursos, incluidos videos y tutoriales. Para realizar esta práctica sólo necesitas lo básico (hacer commits), pero hay muchas cosas más que se pueden hacer con estas herramientas (uso de ramas, gestión de conflictos, etc.) El propio GitHub pone a tu disposición un breve curso (en inglés) para aprender lo básico.
El guión (disponible en PRADO) contiene toda la información sobre en qué consiste la práctica2. Leelo con atención.
Junto a ellos, también tienes a tu disposición una pequeña presentación de resumen, y un tutorial. Debes revisarlos pues continen los primeros pasos a realizar.
Una vez que tengas tu repositorio (el fork que has realizado) en tu ordenador, puedes compilar el código usando ./install.sh
(esto instalará todas las dependencias, y ejecutará cmake
y make
. ).
A continuación, puedes lanzar el software con interfaz gráfica con ./practica2
, o sin ella con ./practica2SG
.
Cuando realices cualquier modificación en el código, debes recompilar, así que usa make clean
y make
.
Si no tienes linux de forma nativa en tu ordenador, puedes crear una máquina virtual en tu ordenador (por ejemplo, usando VirtualBox), e instalar linux en ella. A partir de ahí, puedes trabajar dentro de ella como si tuvieras linux instalado de forma nativa.
Si prefieres no instalar nada localmente, puedes usar Gitpod. Este es un servicio que no depende de los profesores de la asignatura y que no podemos garantizar que funcione perfectamente. Para ello, haz click en el siguiente botón (después de modificarlo para que apunte a tu repositorio y no al de la asignatura) y sigue las instrucciones.
Una vez que el servidor remoto esté creado (la primera vez tardará un rato en configurarlo todo, las siguientes veces, debería ser más inmediato), verás un IDE completamente funcional en el navegador; puedes seguir usándolo, o usar VScode localmente si lo tienes instalado(aunque conectado al servidor Gitpod remoto). También, se te debería de haber abierto una nueva ventana en el navegador que te mostrará la interfaz gráfica del programa.
Si no se abre la ventana, copia la url del navegador y anteponle 6080-
.
Por ejemplo, si la URL del IDE es https://USUARIO-REPO-zzzzz.ws-eu34.gitpod.io
abriríamos en una nueva pestaña https://6080-USUARIO-REPO-zzzzz.ws-eu34.gitpod.io
.
Si trabajas con Gitpod, ¡no olvides hacer commit de todos tus cambios para que se vayan guardando en tu repositorio!
Hemos creado un fichero con preguntas frecuentes que han ido apareciendo en las distintas sesiones de prácticas.