Python ရှိ Virtual Environment တွင် Project ကို ရွှေ့ပြောင်းခြင်း
Project အဟောင်းကို ဆာဗာသစ်တစ်ခုကဲ့သို့သော ဖိုလ်ဒါအသစ်တစ်ခုသို့ ရွှေ့ပြောင်းရန် လိုအပ်သည့် အခြေအနေများ မကြာခဏဖြစ်ပေါ်တတ်ပါသည်။ Python ရှိ Virtual Environment ဖြင့် ဤသို့ မည်သို့လုပ်ဆောင်နိုင်ကြောင်း လေ့လာကြည့်ရအောင်။
ပထမဦးစွာ ဖိုလ်ဒါအသစ် new_project_ven ကို ဖန်တီးပြီး၊ ၎င်းအတွင်းသို့ project_ven မှ project ကို ရွှေ့ပြောင်းမည် -
- /project_venv/
- ...
- /project1/
- main.py
- /new_project_venv/
ထို့နောက် virtual environment project_ven မှ တပ်ဆင်ထားသော package အားလုံးကို ကူးယူမည်။ အောက်ပါ command ကို အသုံးပြု၍ လုပ်ဆောင်နိုင်သည် -
python -m pip freeze > req.txt
freeze စကားလုံး၏ ဘယ်ဘက်တွင် ထောင့်ကွင်းစက ထားရပြီး package များအကြောင်း အချက်အလက်များ သိမ်းဆည်းမည့် ဖိုင်အမည်ကို ညွှန်ပြရမည်။ ကျွန်ုပ်တို့၏ ဖိုင်အမည်မှာ req.txt ဖြစ်သော်လည်း မည်သည့်အမည်မဆို ပေးနိုင်ပါသည်။ Command ကို run ပြီးနောက် project ဖိုလ်ဒါအတွင်း ဖိုင်အသစ်ပေါ်လာမည် -
- /project_venv/
- ...
- /project1/
- main.py
- req.txt
ထို့နောက် main.py နှင့် req.txt ဖိုင်နှစ်ခု ရှိပြီးသား project1 ဖိုလ်ဒါကို ကူးယူရမည်။ ၎င်းနောက် ၎င်းကို new_project_venv ဖိုလ်ဒါအတွင်းသို့ ထည့်သွင်းမည် -
- /project_venv/
- ...
- /project1/
- main.py
- req.txt
- /new_project_venv/
- /project1/
- main.py
- req.txt
- /project1/
ယခု လက်ရှိ virtual environment မှ ထွက်မည် -
deactivate
ထို့နောက် terminal တွင် new_project_venv/project1 ဖိုလ်ဒါသို့ သွားရမည်။ ၎င်းနောက် project အသစ်အတွက် virtual environment အသစ် ဖန်တီးရမည် -
python -m venv ..
ထို့နောက် ကျွန်ုပ်တို့၏ environment အသစ်ကို activate လုပ်မည် -
..\Scripts\activate # Windows အတွက်
source ../bin/activate # Linux အတွက်
ထို့နောက် terminal တွင် virtual environment အသစ်၏ အမည်ကို မြင်ရမည် -
(new_project_venv)
ယခု မူရင်း project မှ package များကို ပြန်လည် restore လုပ်ရန် လိုအပ်သည်။ ဤအတွက် အောက်ပါ command ကို အသုံးပြုမည် -
pip install -r req.txt
Library များ အောင်မြင်စွာ တပ်ဆင်ပြီးနောက် အောက်ပါ မက်ဆေ့ဂျ်ကို ပြသမည် -
Successfully installed numpy-1.26.4
သင်ဖန်တီးထားသော project ကို virtual environment အသစ်သို့ ရွှေ့ပြောင်းပါ။
Project အသစ်အတွင်း မူရင်းဖိုလ်ဒါမှ library အားလုံးကို ပြန်လည် restore လုပ်ပါ။ တပ်ဆင်ထားသော library များ အလုပ်လုပ်ကြောင်း စစ်ဆေးပါ။