Latest web development tutorials

مستودع بعيد الجهاز الهضمي

بوابة هو أن ليس هناك خادم مركزي مثل SVN.

ونحن نستخدم حاليا لبوابة أوامر يتم تنفيذها محليا، بوابة إذا كنت ترغب في مشاركة التعليمات البرمجية أو بالتعاون مع مطورين آخرين. تحتاج إلى وضع البيانات على خادم واحد يمكن الاتصال مطورين آخرين.

يستخدم هذا المثال مستودع جيثب كما بعيد، يمكنك أن تقرأ لدينا أول جيثب تعليمي بسيط.


مضيفا المكتبات عن بعد

لإضافة مستودع بعيد جديد، يمكنك تحديد اسم بسيط، لتكون مرجعا في المستقبل، وشكل الأمر كما يلي:

git remote add [shortname] [url]

في هذا المثال، مستودع بعيد جيثب على سبيل المثال، إذا كنت لا يمكن جيثب الموقع الرسمي https://github.com/ مسجل.

منذ انتقال الخاص بوابة مستودع المحلية وجيثب مستودع هو عن طريق التشفير SSH، لذلك نحن بحاجة إلى تكوين معلومات المصادقة:

استخدم الأمر التالي لتوليد SSH مفتاح:

$ ssh-keygen -t rsa -C "[email protected]"

[email protected] إلى صندوق البريد الخاص بك مسجلة على جيثب، وبعد ذلك سوف يطلب منك تأكيد المسار وإدخال كلمة المرور، والتي نستخدمها الطريقة الافتراضية للدخول على خط المرمى. النجاح سيولد .ssh مجلد ~ / تحت، داخل، id_rsa.pub مفتوحة، نسخ داخل المفتاح.

مرة أخرى على جيثب، أدخل إعدادات الحساب (تكوين حساب)، وترك مفاتيح SSH مختارة، اضافة SSH مفتاح، لقب مجرد ملء لصق إنشاؤها على مفتاح جهاز الكمبيوتر الخاص بك.

للتحقق نجاحا، أدخل الأمر التالي:

$ ssh -T [email protected]
Hi tianqixin! You've successfully authenticated, but GitHub does not provide shell access.

يعرض الأمر بعد أن قمنا بربط بنجاح إلى جيثب.

بعد الدخول ثم اضغط على "مستودع جديد" كما هو مبين أدناه:

بعد w3cschool.cc شغل اسم مستودع (اسم مستودع بعيد)، والبعض الآخر الحفاظ على الإعدادات الافتراضية، انقر على زر "إنشاء مستودع"، ونحن نجحت في خلق بوابة مستودع جديد:

وبمجرد إنشاء، يتم عرض المعلومات التالية:

المعلومات الواردة أعلاه نستطيع أن نقول من هذا المستودع الجديد استنساخ مستودع، قد تكون دفعت المحتوى إلى مستودع المحلي جيثب مستودع.

الآن، اتبع المطالبات لجيثب، ثم قم بتشغيل الأمر في مستودع المحلي:

$ ls
README
w3cschool本教程测试.txt
test.txt
$ git remote add origin [email protected]:tianqixin/w3cschool.cc.git
$ git push -u origin master
Counting objects: 21, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (15/15), done.
Writing objects: 100% (21/21), 1.73 KiB | 0 bytes/s, done.
Total 21 (delta 4), reused 0 (delta 0)
To [email protected]:tianqixin/w3cschool.cc.git
 * [new branch]      master -> master
Branch master set up to track remote branch master from origin.

الأوامر التالية وفقا للنسخة المحلية في جيثب بنجاح إنشاء مستودع جديد، بدلا من فمرني، لأن اسم المستخدم جيثب لدينا ليست هي نفسها، وليس بنفس اسم المستودع.

بعد ذلك قمنا بإنشاء عودة جيثب مستودع، يمكنك ان ترى تم تحميلها الملفات إلى جيثب:


تحقق المكتبة النائية الحالية

لمعرفة ما يتم ترتيب مستودع بعيد الحالي، يمكنك استخدام الأمر:

git remote
$ git remote
origin
$ git remote -v
origin	[email protected]:tianqixin/w3cschool.cc.git (fetch)
origin	[email protected]:tianqixin/w3cschool.cc.git (push)

مع المعلمة -v، يمكنك أيضا أن ترى عنوان الارتباط الفعلي لكل اسم مستعار عند تنفيذها.


استخراج مستودع بعيد

بوابة اثنين من الأوامر المستخدمة لاستخراج التحديثات مستودع النائية.

1. قم بتحميل الفرع الجديد مع بيانات من مستودع بعيد:

git fetch

الحاجة إلى إجراء بعد أن المدى بوابة دمج فرع بعيد إلى يقع الفرع الخاص بك.

2، واستخراج البيانات من مخزن بعيد ومحاولة دمجها في فرع الحالي:

git pull

يتم تنفيذ الأمر في أي فرع في بوابة الجلب مباشرة بعد تنفيذ فرع بعيد إلى دمج بوابة.

افترض أنك قمت بتكوين مستودع بعيد، وتريد استخراج البيانات المحدثة، يمكنك تشغيل بوابة جلب [اسم مستعار] أقول بوابة للحصول عليه لم يكن لديك البيانات، ومن ثم يمكنك تشغيل بوابة دمج [اسم مستعار] / [الفرع الأول ] إلى أي تحديثات على الخادم (على افتراض أن هذا الوقت كان دفعها إلى الخادم) في الفرع الحالي.

ثم نضغط على "البرنامج التعليمي w3cschool اختبار. TXT" على جيثب وتعديله على الانترنت. مرة واحدة قمنا بتحديث التغييرات محليا.

$ git fetch origin
Warning: Permanently added the RSA host key for IP address '192.30.252.128' to the list of known hosts.
remote: Counting objects: 3, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
From github.com:tianqixin/w3cschool.cc
   7d2081c..f5f3dd5  master     -> origin/master

المعلومات الواردة أعلاه "7d2081c..f5f3dd5 سيد -> المنشأ / سيد" تم تحديث تعليمات فرع الرئيسي، يمكننا استخدام الأمر التالي لتحديث متزامنة إلى محلي:

$ git merge origin/master
Updating 7d2081c..f5f3dd5
Fast-forward
 "w3cschool\350\217\234\351\270\237\346\225\231\347\250\213\346\265\213\350\257\225.txt" | 1 +
 1 file changed, 1 insertion(+)

دفع إلى مستودع بعيد

دفع فرع جديد ومستودع البيانات إلى نهاية البعيدة للأمر:

git push [alias] [branch]

الأمر أعلاه لك [فرع] فرع دفع لتصبح [فرع] فرع، والأمثلة [اسم مستعار] مستودع بعيد على النحو التالي.

$ git merge origin/master
Updating 7d2081c..f5f3dd5
Fast-forward
 "w3cschool\350\217\234\351\270\237\346\225\231\347\250\213\346\265\213\350\257\225.txt" | 1 +
 1 file changed, 1 insertion(+)
bogon:w3cschoolcc tianqixin$ vim w3cschool本教程测试.txt 
bogon:w3cschoolcc tianqixin$ git push origin master
Everything up-to-date

حذف مستودع بعيد

حذف مستودع بعيد يمكنك استخدام الأمر:

git remote rm [别名]
$ git remote -v
origin	[email protected]:tianqixin/w3cschool.cc.git (fetch)
origin	[email protected]:tianqixin/w3cschool.cc.git (push)
$ git remote add origin2 [email protected]:tianqixin/w3cschool.cc.git
$ git remote -v
origin	[email protected]:tianqixin/w3cschool.cc.git (fetch)
origin	[email protected]:tianqixin/w3cschool.cc.git (push)
origin2	[email protected]:tianqixin/w3cschool.cc.git (fetch)
origin2	[email protected]:tianqixin/w3cschool.cc.git (push)
$ git remote rm origin2
$ git remote -v
origin	[email protected]:tianqixin/w3cschool.cc.git (fetch)
origin	[email protected]:tianqixin/w3cschool.cc.git (push)