تثبيت حزمة Python باستخدام النقطة أو easy_install من عمليات إعادة الشراء

StackOverflow https://stackoverflow.com/questions/1033897

سؤال

إن أبسط طريقة للتعامل مع عمليات تثبيت حزمة بايثون، بالنسبة لي، حتى الآن، هي التحقق من المصدر من نظام التحكم بالمصدر ثم إضافة رابط رمزي في مجلد حزم بايثون.

من الواضح أن التحكم بالمصدر يوفر التحكم الكامل في الرجوع إلى إصدار أقدم أو الترقية إلى أي فرع أو علامة، فهو يعمل بشكل جيد للغاية.

هل هناك طريقة باستخدام أحد مثبتات الحزمة (easy_install أو pip أو غيرها)، يمكن للمرء تحقيق نفس الشيء.

يحصل easy_install على tar.gz ويقوم بتثبيته باستخدام setup.py install الذي يتم تثبيته في المجلد dist-packages في python2.6.هل هناك طريقة لتكوينه، أو نقطة لاستخدام نظام التحكم في الإصدار المصدر (SVN/GIT/Hg/Bzr) بدلاً من ذلك.

هل كانت مفيدة؟

المحلول

نقطة هذا في غاية السهولة. على سبيل المثال:

pip install -e hg+http://bitbucket.org/andrewgodwin/south/#egg=South

والنقطة سوف استنساخ تلقائيا الريبو المصدر وتشغيل "setup.py تطوير" بالنسبة لك لتثبيته في البيئة الخاصة بك (والذي هو نأمل أن <لأ href = "http://pypi.python.org/pypi/virtualenv" يختلط = "noreferrer"> virtualenv ). ويدعم جميع بوابة، والتخريب، بازار وزئبقي.

ويمكنك أيضا ثم تشغيل "تجميد PIP"، وسيتم إخراج قائمة بأسماء الحزم المثبتة حاليا مع إصدارات على وجه الدقة (بما في ذلك، على سبيل، وتنقيح المحدد من VCS-تثبيت تطوير). يمكنك وضع هذا مباشرة الى ملف متطلبات وبعد تشغيل

pip install -r requirements.txt

وتثبيت نفس مجموعة من حزم في الإصدارات نفسها بالضبط.

نصائح أخرى

إذا قمت بتنزيل أو التحقق من التوزيع المصدر لحزمة ما - تلك التي تحتوي على "setup.py" بداخلها - فإذا كانت الحزمة تعتمد على "أدوات الإعداد" (التي تعمل أيضًا على تشغيل easy_install)، فيمكنك الانتقال إلى ذلك الدليل وأقول:

$ python setup.py develop

وسوف يقوم بإنشاء الروابط الرمزية الصحيحة في حزم التوزيع بحيث تكون ملفات .py الموجودة في التوزيع المصدر هي التي يتم استيرادها، بدلاً من النسخ المثبتة بشكل منفصل (وهو ما سيفعله "setup.py install" - إنشاء نسخ منفصلة لا تتغير فورًا عندما تقوم بتحرير الكود المصدري لمحاولة التغيير).

كما يشير الرد الآخر، يجب أن تحاول قراءة وثائق "setuptools" لمعرفة المزيد.تعد ميزة "setup.pyDevelop" ميزة مفيدة حقًا!حاول استخدامه مع Virtualenv، ويمكنك "تطوير setup.py" دون عناء وبدون إفساد لغة Python على مستوى النظام بالحزم التي تقوم بتطويرها مؤقتًا فقط:

http://pypi.python.org/pypi/virtualenv

وeasy_install يحظى بدعم لتحميل إصدارات معينة. على سبيل المثال:

easy_install python-dateutil==1.4.0

هل تثبيت V1.4، في حين أن أحدث نسخة 1.4.1 من شأنه أن يمكن الحصول عليها إذا تم تحديد أي إصدار.

وهناك أيضا دعم لالمخارج إس، ولكن باستخدام هذا لا تعطيك فوائد كثيرة من الإصدار اليدوي. راجع الدليل لمزيد من المعلومات أعلاه.

وتكون قادرة على التحول إلى فروع محددة ونادرا ما فائدة إلا إذا كنت تقوم بتطوير حزم في المسألة، ثم انها عادة ليست فكرة جيدة لتثبيتها في حزم الموقع على أي حال.

وeasy_install يقبل URL لشجرة المصدر أيضا. يعمل على الأقل عندما المصادر في التخريب.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top