الوصف: أنا على الإصدار 2.9.0.beta5 وأرغب في التحديث إلى 2.9.0.beta10، ولكن عندما كتبت في Terminal “git pull” يقول “Already up to date”. أيضًا، إعادة البناء لا تعمل.
خطوات التكرار: كتابة git pull في الطرفية تقول “Already up to date”. كتابة ./launcher rebuild app.
أود أيضًا أن أقول إنه يسمح لي بالترقية باستخدام ترقية Discourse، وليس عبر Terminal. أولاً وقبل كل شيء، يسمح لي بترقية Docker فقط. بعد ذلك، سيسمح لي بترقية كل شيء آخر. لكنني حاولت فتح تلك الصفحة بعد تحديث Docker، وأخبرتني هذه الصفحة بما يلي:
cd /var/discourse
./launcher rebuild app
هذه الخطوات. مما يقودنا إلى سؤال: كيف يمكن الترقية إذا كان rebuild app لا يعمل بالنسبة لي لسبب ما.
لا يمنحك الأمر git pull في بعض الأحيان أحدث الالتزامات. يمكنك استخدام *git pull origin **main*** إذا كنت تستخدم Github للتحكم في الإصدار. بالنسبة لمنصات التحكم في الإصدار الأخرى، يكون عادةً git pull origin master*.
شرح
السحب هو جلب ودمج: *git pull = git fetch + git merge*
يقوم git pull origin main بجلب الالتزامات من الفرع الرئيسي للمصدر البعيد (إلى الفرع المحلي origin/main)، ثم يدمج origin/main في الفرع الذي قمت بتحديده حاليًا. ().
بعد استنساخ جديد باستخدام *git clone \u003clink to your repository\u003e*، سيكون لديك فرع محلي “main”، ومصدر بعيد “origin”، وفرعك الرئيسي لديه “origin/main” كفرع علوي.
يعمل git pull فقط إذا كان الفرع الذي قمت بتحديده يتتبع فرعًا علويًا. على سبيل المثال، إذا كان الفرع الذي قمت بتحديده يتتبع origin/master، فإن git pull يعادل git pull origin main.
يمكنك رؤية حالة المستودع ومنطقة التجهيز باستخدام الأمر *git status*.
على سبيل المثال، فيما يلي نتيجة git status على المستودع الخاص بي:
On branch main
Your branch is up to date with 'origin/main'.
nothing to commit, working tree clean
روابط مفيدة أخرى
للحصول على شرح أكثر تعمقًا للاختلافات بين أوامر git pull المختلفة، يمكنك الاطلاع على الصفحات التالية:
أنا لا أستخدم git أبدًا عند ترقية Discourse. أنا فقط أستخدم السطرين أعلاه. أعتقد أن سكريبت إعادة البناء قد تضمن أمر git الضروري لسنوات. آمل أن يكون ذلك صحيحًا.