Mise: डेवलपमेंट टूल्स, environment variables, और task runner
(github.com/jdx)mise क्या है?
- mise, asdf, nvm, pyenv की तरह node, python, cmake, terraform आदि जैसे विभिन्न डेवलपमेंट टूल्स को मैनेज करने वाला टूल है
- direnv की तरह यह प्रोजेक्ट डायरेक्टरी के अनुसार environment variables को मैनेज करता है
- make की तरह यह प्रोजेक्ट build और test में उपयोग होने वाले tasks को मैनेज करता है
30 सेकंड डेमो
- mise का उपयोग करके node के विभिन्न versions इंस्टॉल करने का तरीका दिखाया गया है
which nodeकमांड चलाने पर वास्तविक path लौटता है, यानी यह shim नहीं है
क्विक स्टार्ट
- mise इंस्टॉल करने का तरीका:
$ curl https://mise.run | sh$ ~/.local/bin/mise --versionकमांड से इंस्टॉल किया गया version देखा जा सकता है
- किसी विशेष version को इंस्टॉल करना:
$ curl https://mise.run | MISE_VERSION=v2024.5.16 sh$ ~/.local/bin/mise --versionकमांड से इंस्टॉल किया गया version देखा जा सकता है
- shell में mise को जोड़ना:
- 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:
- runtime इंस्टॉल करना और global default सेट करना:
$ mise use --global node@20$ node -vकमांड से version जाँचा जा सकता है
पूरा दस्तावेज़
- mise.jdx.dev पर पूरा दस्तावेज़ देखा जा सकता है
1 टिप्पणियां
Hacker News राय
जब मैंने mise का उपयोग शुरू किया, तो asdf की कमियों को पूरा करने के साथ यह तेज़ और कम दखल देने वाला shell setup देता था, इसलिए यह संतोषजनक लगा
JS, Ruby, Python, Java SDK management के लिए Mise पर switch किया, और अनुभव अच्छा रहा
टीम की toolchain को एकीकृत करने के लिए mise का उपयोग कर रहे हैं, और Docker या Nix का उपयोग नहीं करते
अगर आप सब कुछ करने की कोशिश करते हैं, तो संभव है कि कुछ भी सही तरह से न कर पाएं
मैं डेवलपर नहीं हूँ, इसलिए ऐसे tools के use cases को नहीं समझता
mise का उपयोग करके Go version manage कर रहा हूँ; यह थोड़ा confusing है और documentation कम है, लेकिन ठीक है
mise को asdf के replacement के रूप में उपयोग करता हूँ और इससे संतुष्ट हूँ
एक साल से अधिक समय से उपयोग कर रहा हूँ, और यह एक सरल tool है जिसने जीवन आसान बना दिया
GitHub Actions workflow में mise को integrate करने के तरीके पर विचार कर रहा हूँ
प्रोजेक्ट का Readme पढ़ने के बाद भी मन में "क्यों?" का सवाल बना रहता है