গিট রেপো থেকে পাইপ ইনস্টল করার সময় কেন # ডিম = ফু


95

গিট রেপো থেকে ইনস্টল করার জন্য যখন আমি "পাইপ ইনস্টল-ই ..." করি, তখন আমাকে # ডিম = কোনও নাম বা পাইপের অভিযোগ নির্দিষ্ট করতে হবে। উদাহরণ স্বরূপ:

pip install -e git://github.com/hiidef/oauth2app.git#egg=oauth2app

এই "ডিম" স্ট্রিং এর তাত্পর্য কি?


4
pip installডকুমেন্টেশনের এই অংশটি সম্পর্কে কথা বলা হয়েছে #egg=name, তবে স্পষ্ট উত্তর দেয় না।
খ্রিস্টান লং

উত্তর:


35

প্রতি পিপ ইনস্টল করুন -h "ডিম" স্ট্রিংটি সেই ডিরেক্টরি যা ইনস্টলের অংশ হিসাবে পরীক্ষা করে দেখা হয় out


12
এটি কি কেবল সংগ্রহস্থলের মতো একই নাম হতে পারে? কেস কি ব্যাপার?
সিএমসিডিগ্রাগনকাই

14
"যে ডিরেক্টরিটি চেক আউট হয়ে যায়"? তাহলে আমি কি শাখার নাম লিখব? কিছু একটা তৈরি কর?
ক্রিস

4
যদি আপনি একটি কাস্টম পাইথন প্যাকেজ তৈরি করেন, আপনি যখন সেটআপলগুলি চালিয়েছিলেন, নামের একটি ডিরেক্টরি তৈরি করা project-name.egg-info/top_level.txtউচিত ছিল। eggপ্যারামিটারের মান হিসাবে এই ফাইলের সামগ্রীগুলি ব্যবহার করুন ।
dspacejs

4
egg=...সেটিংসটি আসলে গুরুত্বপূর্ণ কিনা তা আমি খুঁজে বের করতে পারি না । আমি যে প্যাকেজটি ইনস্টল করছি তাতে টপ_লেভেল.টিএসটিএসটি ফাইলে একাধিক এন্ট্রি রয়েছে। আমি nameস্কোয়া স্ক্রিপ্টটি যেটি কুয়ার্গের সাথে ব্যবহার করে তার সাথে এটি মিলিয়ে পরীক্ষা করেছি setup.pyকিন্তু একটি স্বেচ্ছাসেবী মানও। ফলাফলগুলি উভয়ভাবেই একই বলে মনে হচ্ছে। নোট করুন যে আমি pip install https://...সিনট্যাক্স ব্যবহার করে ইনস্টল করছি যা প্রয়োজন হয় না -e
টেলর এডমিস্টন

7

আপনাকে # ডিম = প্যাকেজ অন্তর্ভুক্ত করতে হবে তাই পিআইপি জানে যে URL এ কী প্রত্যাশা করতে হবে। Https://pip.pypa.io/en/stable/references/pip_install/#vcs-spport দেখুন

ডিম বেশি


20
এর অর্থ কী "তাই পিপ জানে যে ইউআরএলে কী আশা করা যায়?" # ইজিজি ব্যতীত এমন অন্য কিছু আছে যা এর মতো একটি ইউআরএল যুক্ত করতে বৈধ?
লরিন হচস্টিন

আমি আসলে উইলের উত্তরটি পছন্দ করি pip install -h, Source will be checked out into src/PACKAGE (lower-case) and installed in-place (using setup.py develop)আমি নিশ্চিত নই যে এটি অন্য কোথাও ব্যবহৃত হয় ...
স্কাইলার সেভল্যান্ড

এটি ক্লোন করা হয়েছে তবে ইনস্টল করা নেই :(
হলম

6

https://pip.pypa.io/en/stable/references/pip_install/#vcs-support বলেছেন:

ইউআরএল প্রত্যয় "ডিম = -" এর "প্রকল্পের নাম" উপাদানটি পিপ ডাউনলোড করে এবং মেটাডেটা বিশ্লেষণের আগে প্রকল্পটি সনাক্ত করতে তার নির্ভরতা যুক্তিতে পাইপ দ্বারা ব্যবহৃত হয়। ডিমের alচ্ছিক "সংস্করণ" উপাদানটি কার্যকরীভাবে গুরুত্বপূর্ণ নয়। এটি কেবল কোন সংস্করণটি ব্যবহার হচ্ছে তা একটি মানব-পঠনযোগ্য সূত্র সরবরাহ করে। প্রকল্পগুলির জন্য যেখানে setup.py প্রকল্পের মূলের মধ্যে নেই, সেখানে "সাব-ডিরেক্টরি" উপাদান ব্যবহৃত হয়। "সাবডাইরেক্টরি" উপাদানটির মান প্রকল্পের মূল থেকে সেটআপ.পি যেখানে অবস্থিত সেখানে যেতে হবে।

এ থেকে আমি অনুমান করি যে ডিমের মূল্যটি কেবল নির্ভরতা পরীক্ষার জন্য ব্যবহৃত হয় এবং তাই আমি মনে করি, কনভেনশন অনুসারে প্যাকেজের নাম (অর্থাত্ some-pypi-package-name) ব্যবহার করা উচিত, কোনও সংযুক্ত ফোল্ডার নয় (যেমন some_pypi_package_name)


6

একটি ডিম মাত্র কিছু বান্ডিল পাইথন কোড । একটি গিট ইউআরএল, ডিম প্রকল্পের নাম। ভিসিএস সহায়তা

সাধারণত আমরা পাইপি থেকে পাইথন প্যাকেজগুলি ইনস্টল করি, সুতরাং আপনি কেবলমাত্র প্যাকেজের নাম এবং সংস্করণ নির্দিষ্ট করেন (অথবা এটি নির্দিষ্ট না করে তবে এটি সর্বশেষ সংস্করণটি ধরে নেয়)। পাইপি তারপরে কোন ডিমটি চান তা অনুসন্ধান করে এবং পাইপ এটি ইনস্টল করে। pip install celeryসর্বশেষ প্রকাশিত ডিম pip install celery[redis]ইনস্টল করবে এবং একই সেলারি প্যাকেজ যুক্ত একটি আলাদা ডিম ইনস্টল করবে এবং সেলারি এর সেটআপ.পিতে রেডিসের জন্য নির্ভরতা হিসাবে তালিকাভুক্ত যে প্যাকেজগুলির মধ্যে সর্বশেষতম ডিম ইনস্টল করবে।

গিট এবং গিটল্যাব পাথ সহ, আপনি নির্দিষ্ট করে দিন /{user|group}/{repository}.git@{tag}#egg={package-name}#egg=celeryএবং এর মধ্যে পার্থক্য রয়েছে #egg=celery[redis]তবে তারা উভয়ই একই উত্স কোড থেকে আসবে।

"ট্যাগ" একটি প্রকৃত ট্যাগের পাশাপাশি একটি শাখা বা হ্যাশও হতে পারে। এটি masterনির্দিষ্ট করে না নিলে তা ধরে নেওয়া হয় ।

উদাহরণস্বরূপ, git+https://github.com/celery/celery.git#egg=celery==4.3.0মাস্টার শাখা পরীক্ষা করে এটি ইনস্টল করবে। যদিও আপনি কোনও সংস্করণ নম্বর উল্লেখ করেছেন, তবুও এটি ইনস্টলেশনের ক্ষেত্রে আমলে নেওয়া হয় না। সংস্করণ নম্বর অবহিত

গিট বা অন্যান্য ভিসিএস ইউআরএলগুলির মাধ্যমে ইনস্টল করার সময় আপনি যে সংস্করণটি প্রয়োজন সেটির ট্যাগ বা হ্যাশ সন্ধান করতে চাইবেন। উদাহরণস্বরূপ, git+https://github.com/celery/celery.git@v4.3.0#egg=celeryযা "v4.3.3.0" ট্যাগযুক্ত প্রতিশ্রুতিটি চেকআউট করবে এবং তারপরে সেই উত্স কোড থেকে প্যাকেজটি ইনস্টল করবে। ধরে নিচ্ছেন যে রক্ষণাবেক্ষণকারীরা গুরুতরভাবে তাদের সংগ্রহস্থলগুলিকে ভুলভাবে ট্যাগ করেনি, আপনি নিজের পছন্দ মতো সংস্করণটি পেতে পারেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.