alpha project is proof of concept of a web application to manage an association day-to-day operations.
You are free to copy, modify, and distribute alpha project with attribution under the terms of the BSD 3-Clause License. See the LICENSE file for details.
This project uses Spanish as the communication language.
- Instalar python 3.5
- Instalar y configurar git
$ git clone https://github.com/abertal/alpha.git $ cd alpha $ python3 -m venv .venv $ source .venv/bin/activate (.venv) $ pip install --upgrade pip setuptools wheel (.venv) $ pip install --requirement requirements.txt (.venv) $ pip install --requirement dev-requirements.txt
PS > cd alpha PS > python3 -m venv .venv PS > .venv\Scripts\Activate.PS1 (.venv) PS > pip install --upgrade pip setuptools wheel (.venv) PS > pip install --requirement requirements.txt (.venv) PS > pip install --requirement dev-requirements.txt
Hay que crear una carpeta, donde clonaremos el repositorio. Desde el bash de git, nos ubicamos en la carpeta que acabamos de crear.
git clone https://github.com/TuUsuarioGitHub/alpha.git
Comprobamos que no haya modificaciones pendientes
git status
Para trabajar , creamos un rama para no modificar el repositorio original
git branch NombreDeLaRama
Nos cambiamos a la rama creada
git checkout ramauno
Para añadir cambios a la rama
git add FicherosModificados
Para guardar los cambios en la rama
git commit
Para subir los cambios a la rama
git push origin NombreDeLaRama
Volvemos a la rama master,tras hacer pullrequest, en caso de que no lo estemos:
$ git checkout master
Traemos los cambios del repositorio original:
$ git fetch abertal
y ponemos al día nuestro master:
$ git merge --ff-only abertal/master
Una vez el master esta actualizado, procedemos a borrar la rama:
$ git branch --delete nombre_de_la_rama
Además hay que borrar la rama en el remoto:
$ git push origin --delete nombre_de_la_rama
Finalmente, actualizamos nuestro fork en el remoto (nuestro fork en el pc está actualizado desde el git merge anterior):
$ git push origin master
Primero debemos generar un fichero con los cambios realizados usando PowerShell
> python .\manage.py makemigrations
Para realizar el cambio de modelo y actualizarlo con el fichero generado antes
> python .\manage.py migrate
(.venv) $ python manage.py makemigrations (.venv) $ python manage.py migrate
Antes de enviar un cambio hay que comprobar que el código sigue las recomendaciones de estilo del estándar PEP8 ejecutando el comando flake8.
(.venv) PS > flake8
Si hay algún error debe corregirse antes.
También hay que comprobar que no hay errores en los tests. Para ejecutar los tests simplmente hay que ejecutar el comando pytest.
(.venv) PS > pytest
Al igual que con la comprobación anterior, no se puede subir código que no pase los tests.
Por último también es preciso ejecutar la utilidad isort para que las importaciones de paquetes y librerías estén ordenados y agrupados de manera homogénea en toda la aplicación.
(.venv) PS > isort
- La indentación es de 2 espacios.
- Las etiquetas de Django no incrementan la indentación (por ejemplo {% if %}).
- Los elementos HTML sí que añaden un nivel de indentación.
- Excepción: <html>, <head> y <body>
Un ejemplo:
Para el resto de aspectos (atributos, cierre de elementos...) se utiliza como referencia http://codeguide.co/.