CI / git / gitlab / github
gitlab hints / aide
Git |
|
Workflow Git | trunkbaseddevelopment.com |
Semantic versioning | semver.org | Commit messages, règles de base | gist.github.com/robertpainsi |
Conventional commits | conventionalcommits.org |
Full refresh à partir du develop (si problème ou autre) |
git reset --hard origin/develop
|
Rafraîchir (à la main) une branche locale (si problème ou autre) |
git checkout master
|
Synchroniser le local avec le remote
|
git fetch
|
Pour faire une nouvelle branche |
git checkout -b [nom de la branche]
|
Pour changer de branche |
git checkout [nom de la branche] git pull
|
Sous-module : ajouter un git qui vient d'un autre repo |
git submodule add [nom du repo] [dossier dest] Exemple concret qui a fonctionné pour moi : git submodule add https://github.com/goldfire/howler.js.git static/vendors/howler.js
Si erreur git qui parle de répertoire, demander à supprimer le dossier du cache : git rm --cached [dest. ex: static/vendors/howler.js]
|
Sous-module : ajouter un git qui vient d'un autre repo |
git submodule add [nom du repo] [dossier dest] Exemple concret qui a fonctionné pour moi : git submodule add https://github.com/goldfire/howler.js.git static/vendors/howler.js
Si erreur git qui parle de répertoire, demander à supprimer le dossier du cache : git rm --cached [dest. ex: static/vendors/howler.js]
|
Sous-module : ajouter un git qui vient d'un autre repo |
git submodule add [nom du repo] [dossier dest] Exemple concret qui a fonctionné pour moi : git submodule add https://github.com/goldfire/howler.js.git static/vendors/howler.js
Si erreur git qui parle de répertoire, demander à supprimer le dossier du cache : git rm --cached [dest. ex: static/vendors/howler.js]
|
Sous-module : : sur un autre PC mettre à jour avec tous les sous-modules |
Si git pull ne met pas à jour les sous-modules, c'est que ce qui gère les sous-modules sous git n'est pas initialisé :git submodule update --init
|
Pour changer de branche |
git checkout [nom de la branche] git pull
|
Pour changer de branche |
git checkout [nom de la branche] git pull
|
Git global setup Sur PC dev |
git config --global user.name "Olivier Pons" |
Clone gitlab » devPush dev » gitlab |
git clone git@gitlab.com:olivier.pons/ajeter.git |
Init. projet pas vide: Clone dev » gitlab |
cd existing_folder |
Git existant sur dev Clone dev » gitlab |
cd existing_repo |
Autre Git existant sur gitlab Clone gitlab » dev |
> git clone git@gitlab.com:adresse/repo/sur/gitlab/monprojet.git
Donc en local, on a en local nom-de-la-branche liée à la branche distante remotes/origin/nom-de-la-branche .A partir de là commit, push et pull fonctionnent. |
Si des branches ont été ajoutées au remote : Synchroniser le git local avec le remote |
git remote update origin --prune
|
Requirements
requirements |
|
Le résultat du pip freeze permet d'avoir un "snapshot" des versions exactes utilisées, cela peut éviter certains bugs.
Dans tous les cas, il faut prendre en compte les dépendances dès le début du projet et tout au long de son cycle de vie.
|
|
Une bonne pratique quand on utilise pip est de structurer ses dépendances de la manière suivante :
requirements_dev.txt , le déploiement en prod utilise requirement_prod.txt ou requirements.txt .
Tout ceci permet d'avoir des environnements reproductibles avec des versions figées, et de ne pas avoir à installer des dépendances supplémentaires à la main (par exemple gunicorn en prod).
|