asdf 및 direnv 설정
⚙️ 환경 설정
ASDF 버전 관리자
asdf
는 도구 버전 관리자입니다. 모든 도구 버전 정의는 프로젝트의 Git 리포지토리에 체크인하여 팀과 공유할 수 있는 하나의 파일(.tool-versions
)에 포함되어 모든 사람이 정확히 동일한 버전의 도구를 사용하고 있는지 확인할 수 있습니다.
참조: https://asdf-vm.com/guide/introduction.html
asdf 설치
curl
, git
및 unzip
가 설치되어 있는지 확인하십시오. asdf 다운로드
git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.0
bash를 사용하는 경우
~/.bashrc
파일에 다음을 추가합니다.. $HOME/.asdf/asdf.sh
# configure completions
. $HOME/.asdf/completions/asdf.bash
zsh를 사용하는 경우
~/.zshrc
파일에 다음을 추가합니다.. $HOME/.asdf/asdf.sh
# if using oh-my-zsh, add `asdf` to your plugins list
# for example: plugins=(... asdf ...)
# if you are not using oh-my-zsh, add the following to your `.zshrc` file:
# append completions to fpath
fpath=(${ASDF_DIR}/completions $fpath)
# initialise completions with ZSH's compinit
autoload -Uz compinit && compinit
플러그인 설치
asdf
를 설치한 후 .tool-versions
파일에 있는 모든 플러그인을 추가합니다. 저장소에 따라 .tool-versions
파일에 정의된 도구에 따라 다릅니다.# Add all the plugins to asdf.
cat .tool-versions | awk '{print $1}' | xargs -I _ asdf plugin add _
# Install all tools according to .tool-versions.
asdf install
예시
프로젝트
.tool-versions
파일에 다음이 포함된 경우:ruby 2.6.3
python 3.10.4
nodejs 16.0.0
그런 다음
asdf install
를 실행하여 지정된 버전으로 모든 도구를 설치할 수 있습니다.글로벌 도구 버전
선택적으로 홈 디렉터리에 다음
.tool-versions
파일을 추가할 수 있습니다.direnv 2.31.0
nodejs 16.13.2
pnpm 7.1.5
java adoptopenjdk-8.0.272+10
minikube 1.25.1
helm 3.6.3
helmfile 0.139.9
kubectl 1.23.3
kubespy 0.6.0
kubectx 0.9.4
jq 1.6
golang 1.15.15
poetry 1.1.13
!!! 메모
최신 또는 안정적인 버전의 도구로 최신 상태를 유지하십시오.
자세한 내용은 official asdf documentation을 참조하십시오.
디렌브
direnv
은 쉘의 확장입니다. 현재 디렉토리에 따라 환경 변수를 로드 및 언로드할 수 있는 새로운 기능으로 기존 셸을 보강합니다.direnv
Hook 셸과 함께 direnv
다음과 같은
direnv
파일을 생성하여 .envrc
로 프로젝트를 설정합니다.#!/usr/bin/env bash
export CR_PAT=<YOUR_GITHUB_PAT_WITH_REPO_READ_AND_WRITE>
export NODE_AUTH_TOKEN=$CR_PAT
export DEBUG="*"
cat <<EOF >.env
VITE_BASE_URL=${VITE_BASE_URL}
NODE_AUTH_TOKEN=${CR_PAT}
EOF
direnv로 asdf 후크
설정
다음을 사용하여 direnv용으로 설치asdf-plugin:
asdf plugin-add direnv
설정 쉘
# change --shell flag based on your current shell (bash, zsh, fish, etc.)
asdf direnv setup --shell zsh --version latest
direnv가 연결되면 프로젝트 루트에
.envrc
파일이 있는 경우 프로젝트의 루트 디렉터리에서 다음 명령을 실행하여 환경을 업데이트할 수 있습니다.asdf direnv local
임시 환경 만들기
편집하지 않고 임시 환경을 생성할 수 있습니다
.envrc
또는 .tool-versions
.# Enter a new shell having python and node
asdf direnv shell python 3.8.10 nodejs 14.18.2
# Just execute a npx command under some node version
asdf direnv shell nodejs 14.18.2 -- npx create-react-app
참조:
Reference
이 문제에 관하여(asdf 및 direnv 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/deepanchal/setup-asdf-direnv-5afo텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)