رسائل الأخطاء

Git: «Could not resolve host: github.com» على Mac

تعذر على Git الحصول على عنوان github.com. مع المستودعات البعيدة عبر HTTPS، يعرض Git رسالة curl. أما عبر SSH، فيعرض ssh رسالته الخاصة.

ينطبق على: Git المثبت بواسطة macOS أو Homebrew، على جميع إصدارات macOS الحالية. تم التحقق من النص باستخدام Git 2.56 وOpenSSH 10.5.تاريخ التحقق: 29 أكتوبر 2026

الأعراض

  • يعرض Git fatal: unable to access 'https://github.com/…/': Could not resolve host: github.com.
  • مع مستودع بعيد عبر SSH، يعرض ssh Could not resolve hostname github.com: nodename nor servname provided, or not known.
  • تفشل جميع الأوامر git clone وgit pull وgit push.

الأسباب المحتملة

  • لا يوجد اتصال أو DNS. يتعذر على Mac البحث عن أي اسم.
  • وكيل لا يستخدمه Git. على شبكة تتطلب وكيلًا، يحتاج Git إلى http.proxy أو متغيرات الوكيل.
  • VPN أو مرشح DNS. قد يفشل خادم DNS الخاص بشبكة VPN أو المرشح في الرد على طلب github.com.
  • عنوان URL بعيد غير صحيح. ينتج عن خطأ في كتابة العنوان اسم غير موجود.

كيفية التحقق

  1. اعرض عناوين URL البعيدة للمستودع.

    git remote -v
  2. ابحث عن github.com باستخدام محلّل macOS.

    dscacheutil -q host -a name github.com
  3. اعرض إعداد الوكيل في Git ومتغيرات الوكيل.

    git config --get http.proxy
    env | grep -i proxy
  4. اختبر مسار HTTPS باستخدام curl.

    curl -I https://github.com

كيفية الإصلاح

  1. إذا فشل البحث عن كل الأسماء، فأصلح DNS. انظر تعذر تحليل DNS على Mac.

  2. إذا كانت الشبكة تتطلب وكيلًا، فاضبطه في Git.

    git config --global http.proxy http://proxy.example.com:8080
  3. إذا كان إعداد وكيل قديم غير صحيح، فأزله.

    git config --global --unset http.proxy
  4. صحح عنوان URL البعيد إذا احتوى على خطأ كتابي.

    git remote set-url origin https://github.com/OWNER/REPO.git

باستخدام Kilobat

  1. يختبر تشخيص الاتصال في Kilobat المضيف طبقةً بعد طبقة: الشبكة والوكيل وDNS والقواعد وIPv4 وIPv6 وTLS والخادم. ويحدد الطبقة التي فشلت.

    kilobat why github.com
  2. فحوصات Kilobat هذه مجانية. يشغّلها وكلاء الذكاء الاصطناعي عبر MCP باستخدام diagnose_connection وdiagnose_network. راجع معرفة سبب تعذّر اتصال موقع أو API واحد.

الأسئلة

هل GitHub متوقف؟

ربما، لكن خطأ البحث غالبًا محلي. إذا وجد dscacheutil أسماء أخرى ولم يجد github.com، فتحقق من DNS أو المرشح.

هل تعني هذه الرسالة أن Git صادق على الاتصال ثم رُفض؟

لا. فشل البحث عن المضيف قبل أن يتمكن Git من الاتصال والمصادقة.

المصادر

  • curl: رموز أخطاء libcurl
  • صفحة الدليل git-config(1)، http.proxy، المثبتة مع macOS 27.2 (Git 2.56)
  • صفحتا الدليل ssh(1) وdscacheutil(1) المثبتتان مع macOS 27.2

تم التحقق في 29 أكتوبر 2026.