[x]
):وصف المشكلة / رسالة الخطأ
git-mirror
هو مضيف الجهاز).[lycheejs] (development)$ git push mirror development
Counting objects: 80, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (76/76), done.
Writing objects: 100% (80/80), 15.28 KiB | 0 bytes/s, done.
Total 80 (delta 50), reused 0 (delta 0)
# XXX: Note this /home/alarm/gitea path, this is the outdated update hook path
remote: hooks/update: line 2: /home/alarm/gitea: Permission denied
remote: error: hook declined to update refs/heads/development
To git-mirror:Artificial-Engineering/lycheejs.git
! [remote rejected] development -> development (hook declined)
error: failed to push some refs to 'git@git-mirror:Artificial-Engineering/lycheejs.git'
خطوات التكاثر
/home/alarm
للتجربة ، وبدء تشغيله وتكوينه.git
الصحيح./opt/gitea
لأن لديّ محرك أقراص صلبة خارجي هناك (يعمل على Raspberry Pi 2).custom/conf/app.ini
Quickfix للآخرين
لقد أنشأت برنامجًا نصيًا صغيرًا يفترض أن المجلد ./gitea-repositories
موجود في نفس المجلد مثل ملف gitea الثنائي والذي يعمل على إصلاح جميع روابط التحديث بمجرد تشغيله. في حالتي ، يقع في /opt/gitea/fix_repos.js
حيث توجد مستودعات إعادة الشراء في /opt/gitea/gitea-repositories
. ارتباط بالنص البرمجي fix_repos.js .
تسبب المشاكل
رأيت مشكلتين في المنبع حيث واجه الناس نفس المشاكل. من غير الواضح تمامًا أنه لا يمكنك التنقل حول gitea لأنني أفترض أنه يمكن نسخ / لصق ثنائي بملفات التكوين الخاصة به ويجب أن يعمل معزولًا في هذا المجلد.
اقتراح
ربما يكون من المنطقي أن يكون لديك روتين تمهيد يقوم بفحوصات سلامة جميع عمليات التحديث عند بدء تشغيل خدمة الويب gitea. بحيث يتأكد فقط من أن جميع المسارات محدثة وتشير إلى النظام الثنائي الصحيح.
أدخل لوحة إدارة Gitea على واجهة المستخدم ، وشغّل إعادة كتابة ملف ".ssh / author_keys" (تنبيه: ستفقد المفاتيح غير التابعة لـ Gitea) وأعد كتابة خطاف تحديث المستودعات (مطلوب عند تغيير مسار التكوين المخصص).
نظرًا لأن البيانات جزء ثابت ، يجب إعادة كتابتها داخل واجهة المستخدم الإدارية.
أولاً أحاول دفع git ولكني أحصل على هذا الخطأ.
[تم رفض التحكم عن بُعد] رئيسي -> رئيسي (تم رفض خطاف الاستلام المسبق)
أركض Update the '.ssh/authorized_keys' file with Gitea SSH keys. (Not needed for the built-in SSH server.)
ولكن حدث خطأ.
افتح C: \ Windows \ system32 \ config \ systemprofile.ssh \ authorised_keys.tmp: لا يمكن للنظام العثور على المسار المحدد.
ثم أقوم بتشغيل Resynchronize pre-receive, update and post-receive hooks of all repositories.
وأحاول الدفع مرة أخرى وكل شيء يعمل بشكل جيد.
لست متأكدًا من أن هذا أو التحديث .ssh/authorized_keys
يعمل حتى أنه يعرض خطأ أو شيء ما لكنه يعمل! لا اعرف لماذا.
التعليق الأكثر فائدة
أدخل لوحة إدارة Gitea على واجهة المستخدم ، وشغّل إعادة كتابة ملف ".ssh / author_keys" (تنبيه: ستفقد المفاتيح غير التابعة لـ Gitea) وأعد كتابة خطاف تحديث المستودعات (مطلوب عند تغيير مسار التكوين المخصص).