كيف يمكنك تعلم Git و GitHub أثناء تعلم البرمجة

في هذه المقالة ، سأقدم لك بعض التلميحات حول كيفية أن تصبح نينجا Git / GitHub. أيضًا ، كمكافأة ، سأوضح لك كيفية استخدام Terminal (shell)أثناء الترميز. لذلك إذا كنت مبتدئًا ، فمن المفترض أن يساعدك هذا المنشور على فهم هذه التقنية. وإذا كنت بالفعل نينجا ، فقم بإلقاء نظرة على ذلك لمساعدتك على تذكر الأشياء التي ربما تكون قد نسيتها.

مقدمة موجزة

Git و GitHub أدوات مهمة للغاية لروتيننا كمطورين برمجيات. ولكن ، كيف يمكننا أن نتعلمها لأن لدينا الكثير على لوحاتنا عندما نتعلم الكود؟

أنا Iago Rodrigues ، البرازيلي. أنا طالب نظم معلومات ، متدرب مطور برامج ، ومستقل. أنا في بداية مسيرتي المهنية ، وأردت مشاركة بعض المعرفة التي اكتسبتها معك. لذا ، احصل على قهوتك ودعنا نبدأ!

إذا كنت قارئًا برتغاليًا ، من فضلك اذهب هنا.

يمكنك استخدام هذه الخطة لدراسة أي لغة برمجة مثل JavaScript و Python و Node وأيضًا HTML و CSS. لا يهم التكنولوجيا التي تتعلمها - إصدار عملك باستخدام Git هو الطريقة الافتراضية للبرمجة.

تهيئة البيئة

قبل أن نبدأ ، نحتاج إلى إعداد البيئة لحفظ الكود وأمثلة على ما نتعلمه.

للقيام بذلك ، يجب علينا إكمال بعض المتطلبات:

  • قم بتثبيت Git على أجهزتنا
  • إنشاء حساب جيثب
  • إنشاء مساحة عمل على أجهزتنا

إذا كنت قد قمت بذلك بالفعل ، فيمكنك الانتقال مباشرة إلى سير عمل GitHub وقسم Terminal .

تثبيت Git على جهازك

يختلف تثبيت Git في كل نظام تشغيل. تحقق من موقع Git الرسمي لمعرفة الطريقة المناسبة لك.

ولكن إذا كنت تستخدم Windows (وتتحدث البرتغالية) ، فإنني أوصي بهذه المقالة.

بمجرد تثبيت Git ، نحتاج إلى إنشاء حساب GitHub وتكوينه على أجهزتنا.

إنشاء حساب على جيثب

لإنشاء حساب ، انتقل إلى موقع ويب GitHub واملأ النموذج الرئيسي.

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

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

سيطلب GitHub بعض الأشياء قبل الانتهاء من إعداد حسابك. يمكنك الإجابة عليها الآن ، أو الانتقال إلى الشاشة التالية.

مع اكتمال كل شيء ، يمكننا بدء مشروعنا.

قبل أن ننشئ مستودعنا ، دعنا نقوم بإعداد اسم المستخدم والبريد الإلكتروني على GitHub في جهازنا.

إعداد نظامنا ببيانات GitHub الخاصة بنا

افتح Terminal الخاص بك. في Windows ، يجب عليك فتح قائمة ابدأ واكتب cmd. ثم انقر فوق إدخال.

أو يمكنك تثبيت cmder (وهو خيار جيد) لاستخدامه بدلاً من cmd ، وهو Windows Terminal الافتراضي.

مع ذلك ، يتعين علينا تنفيذ أمر shell التالي في cmder:

git config --global user.name "our_GitHub_user_name"

أدخل الآن عنوان بريدك الإلكتروني على GitHub:

git config --global user.email "our_GitHub_user_email"

إعداد مفتاح الوصول إلى GitHub

عندما تصل إلى مستودع عبر shell ، فأنت بحاجة إلى الحصول على إذن الوصول. يتم منح هذا عند تسجيل الدخول إلى حساب GitHub الخاص بك. ولكن ، في كل مرة ترسل فيها شيئًا إلى المستودع الخاص بك (الريبو) ، يجب عليك تمرير بيانات الاعتماد الخاصة بك.

لتجنب ذلك ، استخدم مفتاح SSH. هذا هو مفتاح الوصول الذي يتبادله GitHub مع المفتاح الذي تم تكوينه على أجهزتنا.

لإنشاء هذا المفتاح ، اتبع العملية الموضحة في وثائق GitHub.

مع كل شيء تم تكوينه ، فأنت على ما يرام!

سير عمل GitHub والمحطة الطرفية

دعنا نضع قاعدة هنا:

في كل مرة تنشئ فيها مشروعًا لدراسة شيء ما ، مثل إنشاء صفحة HTML أو لعبة سطر أوامر باستخدام Node.js أو أي شيء ، ستقوم بإنشاء مستودع ، واستنساخه في جهازك ، والعمل عليه باستخدام الفروع ، وجعله صغيرًا يلتزم بالإرسال إلى GitHub .

صفقة؟!

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

اذا هيا بنا نبدأ.

أنشئ مشروعًا جديدًا

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

انقر فوق مستودع جديد .

لنفترض أنك تقوم بإنشاء مشروع لدراسة HTML ، لذلك قم بتسمية مستودعك التعليمي html . يمكن أن يكون اسم الصفحة التي يتم إنشاؤها أو أي مشروع، مثل: المناهج الدراسية في أتش تي أم أل ، القليل ثعبان ، تيك تاك تو ، أو أي شيء آخر ، حسنا؟

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

يجب عليك أيضًا إنشاء ملف README ، وتحديد نوع الترخيص الذي ستستخدمه في المشروع. ألق نظرة على هذه الأمثلة الجيدة من READMEs ، وكذلك الترخيص لاستخدامه في المشروع.

يعد ملف README وصفًا أكثر اكتمالاً لمشروعك ، لذا من الجيد وضع بعض المعلومات المفيدة فيه. اتبع الأمثلة في الرابط.

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

قم بإنشاء مساحة العمل الخاصة بك

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

استخدم الجهاز لإنشاء مجلد يكون مساحة عملك . يمكنك القيام بذلك للحفاظ على نظام منظم ، وإلا فسوف ينتهي بك الأمر إلى تشتيت مشاريعك (وقد تفقدها تمامًا كما فقدت تلك القطط المتحركة التي حفظتها على جهاز الكمبيوتر الخاص بك ...).

بافتراض أنك قمت بالفعل بتثبيت cmder ، يمكننا الآن فتحه (إذا لم تقم بذلك ، فهذا هو الوقت المناسب الآن) وسنكون في C:/Users/your_computer_name.

إذا لم تكن على هذا المسار ، فاستخدم الأمر:

cd %home%

قم بتشغيل الأمر mkdir folder_nameلإنشاء مساحة العمل. فمثلا:

mkdir workspace

هذا هو! الآن لديك المجلد الافتراضي لمشاريعك ، ويمكنك استنساخ مستودعاتك هناك.

استنساخ مستودعاتك

يعني استنساخ المستودع أنك ستنسخ جميع الملفات والأدلة الموجودة على خادم GitHub إلى جهازك حتى تتمكن من العمل معهم.

أنت الآن بحاجة إلى استنساخ المشروع الذي قمت بإنشائه على GitHub إلى مساحة العمل الخاصة بك . للقيام بذلك ، انتقل إلى المجلد الذي قمت بإنشائه للتو. في cmder ، اكتب:

cd workspace\

نصيحة : إذا قمت بإنشاء المجلد أو أردت الوصول إلى مجلد موجود بالفعل ، فيمكنك البدء في كتابة اسمه والضغط على TAB ، وسيقوم cmder بإكمال الاسم تلقائيًا نيابة عنك.

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

الرابط موجود في هذا الزر الأخضر المسمى Clone or Download :

قم بالتغيير من HTTPS إلى SSH ، لأنك قمت بالفعل بتكوين مفتاح الوصول في حسابك.

يمكنك الآن تشغيل git cloneالأمر وتمرير الرابط الذي تحصل عليه. مثل هذا تماما:

git clone [email protected]:our-username/learning-html.git

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

يمكنك الوصول إلى مجلد المستودع الذي تم إنشاؤه في مساحة العمل الخاصة بك عند نسخه.

اكتب الأمر: cd learning-html/

انتباه : أفترض أنك داخل workspaceالسجل الآن. إذا لم تكن كذلك ، فلن يعمل الأمر أعلاه. استخدم cd %home%\workspace\ثم الأمر أعلاه.

إنشاء فرع

في كل مرة تقوم فيها بتغيير شيء ما في مشروع تم إصداره باستخدام Git ، يجب عليك إنشاء فرع باسم المهمة التي تعمل عليها. هذا يمنعك من العبث بالكود "الرئيسي" الموجود في الفرع الرئيسي . لهذا ، يمكنك استخدام الأمر التالي:

git checkout -b task_name

A فرع مثل فرع شجرة. إنه جزء من جذع الشجرة. لذلك يمكنك إجراء تغييرات بالتوازي مع الجزء الرئيسي من المشروع دون التأثير عليه.

فمثلا:

بمجرد القيام بذلك ، يمكنك التغيير تلقائيًا إلى الفرع الذي تم إنشاؤه حديثًا ويمكنك كتابة التعليمات البرمجية مثل مجنون الآن

التزم بالتغييرات

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

إلى ارتكاب شيء هو أن أقول بوابة أنك وضع التغييرات في قائمة الانتظار إلى أن يدفع (أرسل) إلى المخزون الخاص بك عن بعد.

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

للقيام بذلك ، قم بتشغيل بعض الأوامر حتى يفهم Git أننا نريد إرسال تغييراتنا للقيام بإعادة الشراء عن بُعد. اركض git add file_nameلإخبار Git بإعداد الملف.

بدلاً من ذلك ، يمكنك التشغيل git add --allلإرسال جميع الملفات التي أجريت بعض التغييرات عليها. باستخدام git statusالأمر ، يمكنك معرفة الملفات التي تم تغييرها التي ستلتزم بها بالخادم.

في المثال أعلاه ، تم إنشاء ملف index.htmlو وضع الجهاز الهضمي تم تشغيل الأمر لمعرفة ما تم تغييره. ثم تمت إضافة الملف مع إضافة بوابة و وضع GIT تم تشغيل مرة أخرى لمعرفة الملفات التي تم إضافتها إلى مساحة العمل جيت.

مع أنه يمكنك الآن ارتكاب التغييرات. ما عليك سوى تشغيل الأمر git الالتزام ، تمامًا مثل git commit -m "commit_message". تذكر تضمين رسالة وصفية لما تمت إضافته إلى الالتزام.

دمج التغييرات

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

git diff master

سيكون الإخراج شيئًا مثل:

يعرض لك Git أحدث التزام تم إجراؤه ، والملفات التي تمت إضافتها أو تغييرها ، وما تم تغييره أيضًا.

منذ كنت تعرف أن لديك خلافات بين فرع وسيد، تحتاج إلى دمج لهم الانضمام ولجان الجديدة التي قمت بها في الفرع الخاص بك، مع رمز في الماجستير. للقيام بذلك ، تحتاج إلى الذهاب إلى الفرع الرئيسي ، على cmder ، وتشغيل الأمر git merge.

للرجوع إلى السيد ، قم بتشغيل git checkout master. لدمج الالتزامات ، قم بتشغيل git merge our_branch_name.

سيعرض لك Git إخراجًا يؤكد ما تمت إضافته.

إرساله إلى GitHub

بعد إجراء جميع التغييرات ودمجها ، يمكنك الآن إرسالها إلى مستودعك البعيد على GitHub.

سوف تستخدم git push origin masterللقيام بذلك.

يمكنك أيضا استخدام فقط git push. سيكون لها نفس النتيجة. ولكن عندما تدفع التغييرات لأول مرة في مساحة عملك ، فأنت بحاجة إلى القيام git push origin masterبذلك حتى يعرف Git أن مساحة العمل الخاصة بك هي أصل الدفع.

سيظهر التزامك الآن في صفحة مستودع GitHub الخاص بك:

استنتاج

في هذا البرنامج التعليمي ، تعلمت كيفية إنشاء مشروع على GitHub بحيث يمكنك تتبع تقدمك في كل مرة تدرس فيها شيئًا جديدًا. سيساعدك هذا في التعرف على سطر الأوامر (Terminal) وأوامر Git و GitHub. إلى جانب ذلك ، ستساعدك في إنشاء محفظة لطيفة يمكنك عرضها في مقابلات العمل.

ستساعدك ممارسة مثل هذا أيضًا على فهم كيفية استخدام Git مع المستودعات البعيدة (المستودعات المستضافة على بعض الأنظمة الأساسية مثل GitHub ). ستقوم أيضًا برفع مستوى معرفتك ومهاراتك في Terminal.

لا تنس القواعد الأساسية التي تحددها:

  • دائما إنشاء مشروع جديد للدراسة
  • العمل على الفروع
  • الالتزام بالتغييرات حتى يحين وقت دفعها إلى GitHub

حسنا؟ :)

عد إلى هنا واتبع هذا الدليل التفصيلي في كل مرة تنسى فيها شيئًا!

اسمي Iago Rodrigues. أنا متدربة في البرازيل ، في مدينة بيليم.

يمكنك متابعتي على وسائل التواصل الاجتماعي. يسعدني دائمًا المساعدة في ما يمكنني فعله.

Iago Rodrigues (iagokv) | تويتر

أحدث التغريدات من Iago Rodrigues (iagokv). المطور الامامي | Vue.js padawan | مستجد على الحياة. بيليم ، البرازيل twitter.com

بلى! أنا أعلم. صورتي على تويتر شيء ...