TIL #6 - Flexbox, python `sys.path`, git rebase au tout début d'un projet
Ce weekend sonne la fin de mes vacances, et je publie donc maintenant les petits TILs d'avant les vacances. Comme ça je peux commencer mon année professionnelle proprebment !
Flexbox en CSS
Un petit jeu rigolo pour s'entraîner avec des flexbox en CSS : https://flexboxfroggy.com/#fr.
Et on me glisse à l'oreillette (merci Lamecarlate) qu'il existe la même chose pour les grids : https://cssgridgarden.com/#fr.
sys.path pour Python
Quand Python se lance, il regarde dans a une série de dossiers pour importer les modules. Par exemple :
$ python -c "import sys;print(sys.path)"
['', '/home/ewen/.pyenv/versions/3.11.9/lib/python311.zip', '/home/ewen/.pyenv/versions/3.11.9/lib/python3.11', '/home/ewen/.pyenv/versions/3.11.9/lib/python3.11/lib-dynload', '/home/ewen/.pyenv/versions/3.11.9/lib/python3.11/site-packages']
Dans le venv de mon répertoire où j'écris ces lignes :
$ python -c "import sys;print(sys.path)"
['', '/home/ewen/.pyenv/versions/3.11.9/lib/python311.zip', '/home/ewen/.pyenv/versions/3.11.9/lib/python3.11', '/home/ewen/.pyenv/versions/3.11.9/lib/python3.11/lib-dynload', '/home/ewen/dev/site/.venv/lib/python3.11/site-packages']
(notez le dernier élément de la liste)
On peut ajouter des répertoires, par exemple le répertoire courant, en mettant quelque chose dans la variable d'environnement PYTHONPATH :
$ PYTHONPATH=. python -c "import sys;print(sys.path)"
['', '/home/ewen', '/home/ewen/.pyenv/versions/3.11.9/lib/python311.zip', '/home/ewen/.pyenv/versions/3.11.9/lib/python3.11', '/home/ewen/.pyenv/versions/3.11.9/lib/python3.11/lib-dynload', '/home/ewen/.pyenv/versions/3.11.9/lib/python3.11/site-packages']
(notez le deuxième élément de la liste)
Merci au collègue de travail qui m'a aiguillé là-dessus !
git rebase mais au tout début d'un projet
Au tout début d'un projet suivi par Git, mettons au deuxième commit, on voudrait réécrire un peu l'historique.
On peut essayer git rebase -i HEAD~2. Malheur ! Git nous répond : fatal: invalid upstream 'HEAD~2'.
En fait, on peut accéder au premier commit avec --root, comme ceci :
git rebase -i --root