الصعوبة متوقعة عندما تبدأ بأي عمل جديد، خصوصاً إذا كان العمل يتضمن أشخاص آخرون، مما يجعل الوقوع في الخطأ أمراً مزعجا.
لكن المساهمة في مشاريع مفتوحة المصدر تتطلب وتتوقع الخطأ ولهذا السبب الآخرون سيساعدونك في تصحيح هذا الخطأ.
في هذا المشروع هدفنا هو تسهيل الطريق لمساهمتك الأولى.
لكن المساهمة في مشاريع مفتوحة المصدر تتطلب وتتوقع الخطأ ولهذا السبب الآخرون سيساعدونك في تصحيح هذا الخطأ.
في هذا المشروع هدفنا هو تسهيل الطريق لمساهمتك الأولى.
قراءة ومشاهدة التعليمات المتوفرة على الإنترنت ستساعدك حتماً، لكنك ستستفيد أكثر إذا استطعت المساهمة في مشروع دون الخوف من الوقوع في الخطأ. هذا المشروع يركز على توفير التوجيهات والتعليمات البدائية لإتمام أول مساهمة لك.
تذكر أن الخطأ متوقع والهدف أن تتجاوز الخطأ في هذه البيئة، نريد منك أن تكون مسترخيا ومتابعا الخطوات المتوفرة لإتمام مشاركتك الأولى. نعدك ستستمع بذلك.
إذا لم يكن لديك git على الجهاز الخاص بك،قم بتثبيته من هنا
انسخ هذا المشروع بالضغط على زر Fork في أعلى هذه الصفحة.
من خلال ذلك ستنشأ نسخة من هذا المشروع على حسابك الخاص.
انقل هذا المشروع على جهازك.
انقر على زر Clone ثم انقر على أيقونة Copy to clipboard
افتح (Terminal) واكتب الأمر التالي:
git clone "url you just copied"
قم باستبدال "url you just copied" بالرابط الذي نسخته من الخطوة السابقة، هذا الرابط يحتوي على المشروع.
على سبيل المثال:
git clone https://github.com/this-is-you/first-contributions.git
في هذا المثال انسخ 'this-is-you' سيكون اسم حسابك في موقع github يليه رابط المشروع الذي فرقته في أول خطوة، هذا الأمر سينسخ محتويات المشروع على جهازك لتتمكن من التعديل عليه بحرية.
انتقل إلى المجلد الذي يحتوي على المشروع عن طريق الأمر التالي:
cd first-contributions
الآن قم بإنشاء فرع عن طريق الأمر التالي:
git checkout -b "add-your-name"
اسمك بدل add-your-name
على سبيل المثال:
git checkout -b "add-alonzo-church"
الآن قم بفتح الملف "Contributors.md" في محرر النصوص المفضل لديك وأضف اسمك ثم احفظ الملف.
بعد ذلك اذهب إلى (Terminal) واكتب الأمر هذا
git status
هذا الأمر سيظهر لك التغيرات التي حدثت في المشروع.
لإضافة هذه التغييرات قم بإضافتها عن طريق هذا الأمر git add
.
git add Contributors.md
الآن قم بإتمام التغييرات باستخدام الأمر
git commit
.git commit -m "Add <your-name> to Contributors list"
استبدل
<your-name>
باسمك. ارفع التغيررات عن طريق الأمر
git push
git push origin "add-your-name"
استبدل
<add-your-name>
باسم الفرع الذي أنشأته من قبل.في صفحة المشروع الخاصة بك يوجد زر
Compare & pull request
. اضغط على هذا الزر.والآن سلم طلبك لتتم مراجعته
بعد المراجعة سوف أقوم بدمج تغيراتك إلى الفرع الرئيس في المشروع. سيتم تنبيهك عن طريق البريد الإلكتروني بذلك.
الفرع الرئيس الخاص بك لن يحتوي على هذه التغيررات. عليك مزامنته مع الفرع الرئيس عن طريق الخطوات التالية.
الخطوة الأولى، انتقل إلى الفرع الرئيس.
git checkout master
ثانياً، أضف رابط مشروعي كـ
upstream remote url
.git remote add upstream https://github.com/Roshanjossey/first-contributions
بهذه الطريقة نخبر git أن هناك نسخة أخرى من هذا المشروع في هذا الرابط ونسميها
upstream
.
بعد أن أوافق على تغيراتك، قم بسحب النسخة الجديدة من المشروع عن طريق الأمر التالي:
git fetch upstream
هنا سنقوم بسحب جميع التغييرات من
(upstream remote)
. والآن، عليك أن تدمج التحديثات الجديدة من فرعي إلى فرعك الرئيس.git rebase upstream/master
وهنا تطبق التغييرات إلى الفرع الرئيس. إذا رفعت التغييرات لفرعك الرئيس سيتم تحديث مشروعك
git push origin master
لاحظ أنك ترفع إلى
remote
اسمه origin
.مبروك! لقد قمت بعمل سير العمل: تشعب -> استنساخ -> تعديل -> طلب-سحب الذي ستواجهه كثيرًا كمساهم!
احتفل بمساهمتك وشاركها مع أصدقائك ومتابعيك بالانتقال إلى تطبيق الويب.
يمكنك الانضمام إلى فريق Slack في حال احتجت إلى أي مساعدة أو لديك أي أسئلة. انضم الى فريق سلاك Slack
لنبدأ الآن بالمساهمة في مشاريع أخرى. لقد قمنا بجمع قائمة مشاريع فيها مشاكل سهلة يمكنك البدء فيها. تحقق من قائمة المشاريع في تطبيق الويب.
تهانينا , لقد إنتهيت من عملية الفرق - الاستنساخ - التعديل - فتح طلب دمج , هذه العملية سترافقك الى النهاية كمساهم في البرمجيات المفتوحة
إحتفل بمساهمتك وشاركها مع إصدقائك ومتابعيك بالذهاب للموقع التالي web app
يمكنك الإنضمام الينا في فريق السلاك في حال إحتجت أي مساعدة أو سؤال Join slack team
والآن لنساعدك بالمساهمة في مشاريع أخرى , لقد جمعنا قائمة من المشاريع التي تحتوي على مشاكل بسيطة للمبتدئين ليمكنك البدء منها يمكنك تصفح هذه القائمة من هنا the list of projects in the web app.
GitHub Desktop | Visual Studio 2017 | GitKraken | Visual Studio Code | Atlassian Sourcetree | IntelliJ IDEA |