Qu’est-ce que mise ?
- mise est un outil qui, à l’instar de asdf, nvm et pyenv, permet de gérer divers outils de développement comme node, python, cmake et terraform
- à la manière de direnv, il gère les variables d’environnement par répertoire de projet
- à la manière de make, il gère les tâches utilisées pour le build et les tests d’un projet
Démo en 30 secondes
- montre comment utiliser mise pour installer différentes versions de node
- lorsque vous exécutez la commande
which node, le chemin réel est renvoyé, et ce n’est pas un shim
Démarrage rapide
- Méthode d’installation de mise :
$ curl https://mise.run | sh- vous pouvez vérifier la version installée avec la commande
$ ~/.local/bin/mise --version
- Installation d’une version spécifique :
$ curl https://mise.run | MISE_VERSION=v2024.5.16 sh- vous pouvez vérifier la version installée avec la commande
$ ~/.local/bin/mise --version
- Connecter mise au shell :
- bash :
echo 'eval "$(~/.local/bin/mise activate bash)"' >> ~/.bashrc - zsh :
echo 'eval "$(~/.local/bin/mise activate zsh)"' >> ~/.zshrc - fish :
echo '~/.local/bin/mise activate fish | source' >> ~/.config/fish/config.fish
- bash :
- Installer un runtime et définir la valeur globale par défaut :
$ mise use --global node@20- vous pouvez vérifier la version avec la commande
$ node -v
Documentation complète
- la documentation complète est disponible sur mise.jdx.dev
1 commentaires
Avis sur Hacker News
Lorsqu’ils ont commencé à utiliser mise, ils en ont été satisfaits, car l’outil corrigeait les défauts de asdf tout en offrant une configuration du shell plus rapide et moins intrusive
Ils sont passés à Mise pour gérer JS, Ruby, Python et les Java SDK, et en ont été satisfaits
Ils utilisent mise pour unifier la chaîne d’outils de leur équipe, sans recourir à Docker ni à Nix
En voulant tout faire, on risque fort de ne rien faire correctement
Comme ils ne sont pas développeurs, ils ne comprennent pas les cas d’usage de ce type d’outils
Ils utilisent mise pour gérer la version de Go ; c’est un peu déroutant et la documentation manque, mais cela reste correct
Ils utilisent mise comme remplaçant de asdf et en sont satisfaits
C’est un outil simple qu’ils utilisent depuis plus d’un an et qui leur a facilité la vie
Ils réfléchissent à la manière d’intégrer mise dans un workflow GitHub Actions
Après avoir lu le README du projet, la question « pourquoi ? » demeure