Hub documentation

إدارة مساحات Spaces باستخدام سير عمل CircleCI

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

إدارة مساحات Spaces باستخدام سير عمل CircleCI

يمكنك الحفاظ على مزامنة تطبيقك مع مستودع GitHub الخاص بك باستخدام مسار عمل CircleCI.

CircleCI هو منصة للتكامل المستمر والتسليم المستمر (CI/CD) تساعد على أتمتة عملية تطوير البرمجيات. يُعدّ دائرة سير CircleCI مجموعة من المهام الآلية المُعرَّفة في ملف إعدادات، تُنسَّق بواسطة CircleCI، لتبسيط عملية بناء التطبيقات البرمجية واختبارها ونشرها.

ملاحظة: يجب تتبع الملفات التي يتجاوز حجمها 10 ميغابايت باستخدام git-xet (يُوصى به) أو Git LFS. إذا كنت لا ترغب في استخدام أيٍّ منهما، فقد تحتاج إلى مراجعة ملفاتك والتحقق من سجلّك. استخدم أداة مثل BFG Repo-Cleaner لإزالة أي ملفات كبيرة من سجلّك. ستحتفظ أداة BFG Repo-Cleaner بنسخة محلية من مستودعك كنسخة احتياطية.

أولاً، اضبط مستودع GitHub وتطبيق Spaces معًا. أضف تطبيق Spaces كمسار بعيد إضافي إلى مستودع Git الموجود لديك.

git remote add space https://huggingface.co/spaces/HF_USERNAME/SPACE_NAME

ثم قم بدفع قسري (force push) لمزامنة كل شيء لأول مرة:

git push --force space main

في الخطوة التالية، اضبط مسار عمل CircleCI لدفع فرع git الخاص بك main إلى Spaces.

في المثال أدناه:

  • استبدل HF_USERNAME باسم المستخدم الخاص بك وSPACE_NAME باسم مساحة العمل الخاصة بك.
  • أنشئ سياقًا في CircleCI وأضف متغير بيئة فيه باسم HF_PERSONAL_TOKEN (يمكنك تسميته بأي اسم، واستخدم المفتاح الذي أنشأته بدلًا من HF_PERSONAL_TOKEN) وقيمه كرمز API الخاص بك في Hugging Face. يمكنك العثور على رمز API الخاص بك في Hugging Face تحت رموز API في ملفك الشخصي في Hugging Face.
version: 2.1

workflows:
  main:
    jobs:
      - sync-to-huggingface:
          context:
            - HuggingFace
          filters:
            branches:
              only:
                - main

jobs:
  sync-to-huggingface:
    docker:
      - image: alpine
    resource_class: small
    steps:
      - run: 
          name: install git
          command: apk update && apk add openssh-client git
      - checkout
      - run:
          name: push to Huggingface hub
          command: |
                  git config user.email "<your-email@here>" 
                  git config user.name "<your-identifier>" 
                  git push -f https://HF_USERNAME:${HF_PERSONAL_TOKEN}@huggingface.co/spaces/HF_USERNAME/SPACE_NAME main
Update on GitHub