انتقل إلى المحتوى الرئيسي انتقل إلى الملاحة انتقل إلى التذييل

الأدوات

مزامنة الملفات والوصول عبر SSH وتكامل VS Code وتحديثات CLI.

الأدوات

يوفر Rediacc أربع أدوات للعمل اليومي على آلاتك ومستودعاتك: مزامنة الملفات عبر SSH، طرفية SSH، تكامل VS Code، وتحديثات واجهة سطر الأوامر. جميع هذه الأدوات تعمل عبر SSH. لا يلزم أي عامل أو daemon على الجانب البعيد. إذا كنت تبحث عن واجهة رسومية، فأنت في الصفحة الخاطئة.

مزامنة الملفات (sync)

نقل الملفات بين جهاز العمل الخاص بك ومستودع بعيد باستخدام rsync عبر SSH.

رفع الملفات

يقبل --local مسارًا واحدًا أو أكثر. قد يكون كل مسار ملفًا أو مجلدًا. تُنزل الملفات في <remote>/<basename>؛ محتويات المجلد تندمج في <remote>/. لملف واحد، يُفضل استخدام --remote-file لتحديد مسار الوجهة بوضوح.

# Directory (contents merged into remote)
rdc repo sync upload my-app --local ./src --remote /app/src

# Single file dropped into a remote directory (basename preserved)
rdc repo sync upload my-app --local ./config.yml --remote /app/conf

# Single file, explicit destination path
rdc repo sync upload my-app --local ./config.yml --remote-file /app/conf/config.yml

# Multiple sources in one call
rdc repo sync upload my-app --local a.yml b.yml ./assets --remote /app

--remote و --remote-file متنافيتان. يتطلب --remote-file مسار --local واحد بالضبط يشير إلى ملف.

لا يمكن دمج --mirror مع مصدر ملف؛ سيحذف الملفات الشقيقة في المجلد البعيد.

تنزيل الملفات

استخدم --remote للمجلد (الافتراضي) أو --remote-file لملف واحد. الرايتان متنافيتان.

# Directory
rdc repo sync download my-app --remote /app/data --local ./data

# Single file: --local must be an existing directory
rdc repo sync download my-app --remote-file /app/conf/config.yml --local ./local-conf

التحقق من حالة المزامنة

rdc repo sync status my-app

الخيارات

Optionالوصف
-m, --machine <name>الجهاز المستهدف
<ref> (موضعي)مرجع المستودع الهدف: name أو name:tag، مع @machine اختيارياً
--local <paths...>مسار واحد أو أكثر لملف أو مجلد محلي (رفع) أو مجلد الوجهة المحلي (تنزيل)
--remote <path>مجلد بعيد (نسبي إلى نقطة تحميل المستودع)
--remote-file <path>مسار ملف بعيد لعمليات الرفع أو التنزيل الفردية (بديل لـ --remote)
--dry-runمعاينة التغييرات دون نقل الملفات
--mirrorمطابقة المصدر مع الوجهة، حذف الملفات الزائدة (مصادر المجلدات فقط)
--verifyالتحقق من المجاميع الاختبارية بعد النقل
--confirmتأكيد تفاعلي مع عرض التفاصيل
--exclude <patterns...>استثناء أنماط الملفات
--skip-router-restartتخطي إعادة تشغيل خادم التوجيه بعد العملية

طرفية SSH (term)

فتح جلسة SSH تفاعلية للاتصال بجهاز أو الدخول إلى بيئة مستودع.

الصيغة المختصرة

أسرع طريقة للاتصال:

rdc term connect server-1                    # الاتصال بجهاز
rdc term connect my-app             # الاتصال بمستودع

تنفيذ أمر

تنفيذ أمر دون فتح جلسة تفاعلية:

rdc term connect server-1 -c "uptime"
rdc term connect my-app -c "docker ps"

عند الاتصال بمستودع، يتم تعيين DOCKER_HOST تلقائيًا إلى مقبس Docker المعزول الخاص بالمستودع، لذا فإن docker ps يعرض حاويات ذلك المستودع فقط.

الأمر الفرعي connect

أو استخدم الأمر الفرعي connect للحصول على نفس النتيجة، مع رايات صريحة:

rdc term connect server-1
rdc term connect my-app

إجراءات الحاويات

التفاعل مباشرة مع حاوية قيد التشغيل:

# Open a shell inside a container
rdc repo exec my-app -c <container> -i -- bash

# View container logs
rdc repo logs my-app -c <container>

# Follow logs in real-time
rdc repo logs my-app -c <container> --follow

# View container stats
rdc repo exec my-app -c <container> -i -- bash --container-action stats

# Execute a command in a container
rdc repo exec my-app -c <container> -- ls -la
الخيارالأمرالوصف
-c, --container <name>كلاهماالحاوية المستهدفة داخل المستودع
--lines <n>repo logsعدد أسطر السجل المراد عرضها
-f, --followrepo logsمتابعة السجلات باستمرار
--timestampsrepo logsإضافة طابع زمني لبداية كل سطر
-i, --interactiverepo execإبقاء stdin مفتوحًا (لازم لفتح غلاف)
-u, --user <user>repo execالتشغيل كمستخدم محدد

تكامل VS Code (vscode)

فتح جلسة SSH عن بُعد في VS Code، مُعدّة مسبقًا بإعدادات SSH الصحيحة.

الاتصال بمستودع

rdc vscode connect my-app

يقوم هذا الأمر بما يلي:

  1. اكتشاف تثبيت VS Code الخاص بك
  2. تكوين اتصال SSH في ~/.ssh/config
  3. حفظ مفتاح SSH للجلسة
  4. فتح VS Code مع اتصال Remote SSH إلى مسار المستودع

عرض الاتصالات المُعدّة

rdc vscode list

تنظيف الاتصالات

rdc vscode cleanup

إزالة تكوينات SSH الخاصة بـ VS Code التي لم تعد مطلوبة.

فحص التكوين

rdc vscode check

التحقق من تثبيت VS Code، وإضافة Remote SSH، والاتصالات النشطة.

متطلب مسبق: قم بتثبيت إضافة Remote - SSH في VS Code.

VS Code في المتصفح

لا تريد تثبيت VS Code محليًا؟ شغّل المحرر من داخل صندوق رمل المستودع وافتحه في أي متصفح:

rdc vscode connect my-app --browser

يقوم هذا الأمر بما يلي:

  1. تثبيت خادم المحرر مفتوح المصدر على الجهاز مرة واحدة (مسار مشترك للقراءة فقط، مُتحقَّق من بصمته)
  2. تشغيله داخل صندوق رمل المستودع، بحيث ترى شجرة الملفات والطرفية المدمجة وكل عملية فرعية بالضبط ما يراه المستودع
  3. فتح نفق SSH إلى منفذ محلي وتشغيل متصفحك برابط يحتوي على رمز جلسة خاص

يستمر الخادم في العمل بعد إغلاق النفق؛ إعادة الاتصال تُعيد استخدامه. أدِره بالأوامر:

rdc vscode serve status my-app
rdc vscode serve stop my-app
الخيارالوصف
--no-openطباعة الرابط بدلًا من فتح المتصفح
--url-onlyطباعة سطر رابط واحد على stdout (للنصوص البرمجية) مع الإبقاء على النفق
--local <port>اختيار منفذ النفق المحلي
--server-provider <id>تطبيق خادم المحرر: openvscode (الافتراضي) أو code-server
--server-archive <file>التثبيت من أرشيف مُعد مسبقًا على الجهاز (بدون إنترنت)

يعمل من Linux وmacOS وWindows أو من جهاز لوحي. المتطلب المحلي الوحيد هو متصفح.

تحديثات واجهة سطر الأوامر (update)

الحفاظ على تحديث واجهة سطر الأوامر rdc.

التحقق من التحديثات

rdc update --check-only

تطبيق التحديث

rdc update

يتم تنزيل التحديثات وتطبيقها في مكانها. تختار واجهة سطر الأوامر تلقائيًا الملف الثنائي المناسب لمنصتك (Linux أو macOS أو Windows). يسري الإصدار الجديد عند التشغيل التالي.

التراجع

rdc update --rollback

العودة إلى الإصدار المثبت سابقًا. متاح فقط بعد تطبيق تحديث.

حالة التحديث

rdc update --status

عرض الإصدار الحالي وقناة التحديث وتكوين التحديث التلقائي.

قنوات الإصدار

rdc update --channel edge      # التحديثات المنشورة بشكل مستمر للإنتاج
rdc update --channel stable    # الإصدارات المعززة من edge بعد 7 أيام من التثبيت (الافتراضي)
rdc update --status            # عرض القناة الحالية ومعلومات الإصدار