تحفيز:
تعد PyGithub مكتبة رائعة ، ولكن قد لا يكون استخدامها بديهيًا في البداية. ليس كل شخص خبيرًا في Github API ، لذلك أحاول تقديم بعض الأمثلة العملية (الوصفات) التي نأمل أن تساعدك على البدء.
تم إعداد الهيكل العظمي هنا ونماذج المستندات موجودة بالفعل في readthedocs كالمعتاد:
https://pygithub.readthedocs.io/en/latest/examples.html
لاحظ أن القائمة ستتوسع وأي علاقات
إذا كنت تريد أن ترى أي أمثلة لم يتم تناولها هنا ، فما عليك سوى ترك تعليق.
sfdye اقرأ مثال تسجيل الدخول من فضلك ^^ _
لقد بدأت للتو مع PyGithub ، ووجدت بعض الأمثلة ، لذلك من الواضح أنه تم إنجاز بعض الأعمال - شكرًا ، أيها الناس!
لكني لا أرى أي أمثلة لكيفية الاستماع إلى الأحداث ، على سبيل المثال pushevent و pullrequestevent . هل يمكن إضافة أمثلة على هؤلاء؟
شكراLeviMatus!
تم وضع علامة على هذه المشكلة تلقائيًا على أنها قديمة نظرًا لعدم وجود نشاط حديث لها. سيتم إغلاقه إذا لم يحدث أي نشاط آخر. شكرا لمساهماتكم.
هذا ليس باليا
أنا أكتب أمثلة المنظمة الآن
تم وضع علامة على هذه المشكلة تلقائيًا على أنها قديمة نظرًا لعدم وجود نشاط حديث لها. سيتم إغلاقه إذا لم يحدث أي نشاط آخر. شكرا لمساهماتكم.
أنا جديد على PyGithub SDK وأحاول القيام بالعمليات التالية. ومع ذلك ، تواجه صعوبة في تصفح المستندات لمعرفة الاستخدام.
مكافئ سطر الأوامر:
git checkout <<branch>> and then get file content
القضية:
أنا قادر على الحصول على محتوى الملف من الفرع الرئيسي باستخدام هذا sdk ولكن ليس من فرع معين
مكافئ سطر الأوامر:
git tag -v <<tag_id>>
أرى هنا المستندات https://pygithub.readthedocs.io/en/latest/examples/Repository.html#update-a-file-in-the-repository
git config user.email "[email protected]"
git config user.name "cicd"
git commit --amend --reset-author --no-edit
git pull --no-edit
git add $FILE_NAME
git commit -m "updating $FILE_NAME"
git pull --no-edit && git push origin
أحاول أيضًا العثور على طريقة / api لهذا sdk للقيام بذلك ، ولكن إذا كان شخص ما جاهزًا ، فيرجى المساعدة بنفس الشيء.
تم وضع علامة على هذه المشكلة تلقائيًا على أنها قديمة نظرًا لعدم وجود نشاط حديث لها. سيتم إغلاقه إذا لم يحدث أي نشاط آخر. شكرا لمساهماتكم.
مرحبًا ، أنا مطور جديد نسبيًا وهذا يساعد كثيرًا. هل هناك من يخطط لعمل أمثلة لتطبيق جيثب؟ شكرا!
أنا جديد على PyGithub SDK وأحاول القيام بالعمليات التالية. ومع ذلك ، تواجه صعوبة في تصفح المستندات لمعرفة الاستخدام.
- الحصول على محتوى ملف من فرع معين
مكافئ سطر الأوامر:
git checkout <<branch>> and then get file content
القضية:
أنا قادر على الحصول على محتوى الملف من الفرع الرئيسي باستخدام هذا sdk ولكن ليس من فرع معين
- علامات الريبو وتفاصيلها
مكافئ سطر الأوامر:
git tag -v <<tag_id>>
- قم بتحديث هذا الملف
أرى هنا المستندات
https://pygithub.readthedocs.io/en/latest/examples/Repository.html#update-a-file-in-the-repository
- تحديث تفاصيل المستخدم للالتزام
git config user.email "[email protected]" git config user.name "cicd" git commit --amend --reset-author --no-edit
- Git سحب هذا الفرع قبل الالتزام لأن الأتمتة الأخرى قد تكون قد ارتكبت ملفًا آخر.
- بوابة الالتزام في الفرع
git pull --no-edit git add $FILE_NAME git commit -m "updating $FILE_NAME" git pull --no-edit && git push origin
أحاول أيضًا العثور على طريقة / api لهذا sdk للقيام بذلك ، ولكن إذا كان شخص ما جاهزًا ، فيرجى المساعدة بنفس الشيء.
مرحبا! أحاول الحصول على محتوى فرع معين أيضًا. هل فهمتها؟ شكرا!
estagumor إذا كنت لا تزال بحاجة إلى هذه الإجابة ، فإن المفتاح هو المعامل ref في الوظيفة get_contents
. الافتراضي هو "رئيسي". فيما يلي مثال للحصول على محتويات الفرع "0.6.X" من الريبو scikit-Learn.
from github import Github
g = Github("USERNAME", "PASSWORD")
repo = g.get_repo("scikit-learn/scikit-learn")
repo.get_contents("", ref = "0.6.X")
sfdye لقد بدأت للتو العمل مع PyGithub وهو يعمل بشكل رائع. ومع ذلك ، حتى إذا كنت على دراية بواجهة git api ، فسيكون من الرائع أن تقدم مثالاً عمليًا لكيفية تعيين قواعد إنشاء / تعيين حماية الفرع.
حاولت على سبيل المثال:
g.get_repo ("SECRET / SECRET"). get_branch ("رئيسي"). add_required_signatures ()
@ qbits-rwx أعتقد أن الطريقة التي تحتاجها هي:
https://pygithub.readthedocs.io/en/latest/github_objects/Branch.html#github.Branch.Branch.edit_protection
https://developer.github.com/v3/repos/branches/#update -branch-protection
نعم هذه الحيلة. لسوء الحظ ، لم يتم تنفيذ طلب الالتزامات الموقعة. سيكون من الجيد أن يكون لديك ، لأنها سياسة نحتاج إلى وضعها في كل فرع.
لا تتردد في إرسال FR أو PR
مرحبًا ، كنت أتصفح أمثلة طلبات السحب ، فهل هناك أي طريقة للحصول على طلب سحب من خلال HTML
؟ أو هل هناك أي وظيفة متاحة لتحويل عنوان URL لـ HTML إلى استعلام Github API؟
شكرا جزيلا على هذه الأمثلة! ما أفتقده هو مثال للتعامل مع الاستثناءات. على سبيل المثال ، لم يتضح لي على الفور كيفية الحصول على github.GithubException.UnknownObjectException
.
التعليق الأكثر فائدة
أنا أكتب أمثلة المنظمة الآن