الكثير من الفرق البرمجية , وحتى الأفراد أصبحت تعتمد على أنظمة إدارة النسخ وأشهرها ال GIT وال SVN وقد طرحت في مدونة سابقة ,مقدمة حول إدارة التطوير على نسخ المشروع في فريق (SVN) , وتعتمد هذه الفرق على وجود خادم يحتوي على المخزن الرئيسي الذي يقوم المطورين بالتحديث عليه بشكل دوري , ففي حالة أنظمة النسخ المركزية مثل ال (SVN) يكون المخزن متوفر على الخادم بشكل رئيس ولا يمكن للمطورين العمل دون توفر الخادم
أما في حالة أنظمة النسخ الموزعة مثل ال (GIT) فيكون المخزن الرئيس على الخادم ويوجد مخزن خاص بكل مطور يمكنه العمل عليه والتحديث لاحقا على المخزن الرئيس , ولكن في حال إطالة التحديث على المخزن الرئيس (مخزن الخادم) فإن ذلك سيؤدي إلى وجود إختلاف كبير ومن الصعوب تحديثه
هل بالإمكان وجود تحديث مباشر للتحديثات المخزن دون وجود الخادم , بمعنى إن كنت في العمل أو المنزل أو أي مكان ؟ بالتأكيد تبادر إلى ذهننا ال Cloud وقد طرحت مدونة سابقة مقدمة عن الحوسبة السحابية , بالفعل هذا الحل ساعد الشركات الكبيرة مثل مايكروسوفت وفيسبوك وغيرها على الإعتماد على المخازن التي تعمل على الحوسبة السحابية لضمان مزامنتها من أي وقت ومكان بين أعضاء الفريق وأشهر من يقوم في الخدمة حاليا هو ال GIThub
ال GITHub
يمكنك البدء مباشرة مع ال GIThub بالمجان بعمل 5 مخازن كحد أقصى وتكون هذه المخازن عامة(يمكن للجميع معرفة الكود المتوفر عليها) , ولكن عند طلبك لجعل هذه المخازن خاصة (لا يمكن لأحد الإطلاع عليها غير فريقك المطور) أو طلبك لأكثر من 5 مخازن فإن ذلك سيتطلب دفع مقابل للخدمة حسب نوع الخدمة
هل يمكن عمل مزامنة للتحديثات بين المطورين بالمجان , وعدد غير محدد من المخازن ؟
نعم , هنا نطرح حل بسيط قد يساعدك على مزامنة المخزن بين كل المطورين دون اللجوء إلى ال GIThub وهذا الحل مناسب أكثر للفرق الصغيرة بمعنى 8 إلى 10 أفراد على أكبر تقدير , حيث تكمن الفكرة في إنشاء حساب DropBox وتركيبه على جميع أجهزة مطورين الفريق ومن ثم وضع مجلد المخزن على هذا الحساب فتتم المزامنة بين جميع الاجهزة عن حدوث أي تغيير في المخزن ويمكن تحديث أو سحب بيانات المخزن من أي مكان
لماذا ال Dropbox
هناك أنظمة كثيرة للمزامنة مثل ال Google Drive و SkyDrive ولكن ننصح بال DropBox لأنه يتمتع بالسرعة بالرفع كما أنه يملك نظام SVN داخلي بحيث يمكنك استرجاع أي نسخة ملف تم التغيير عليه ضمن سجل الأحداث وعند كل تغيير
عيوب هذا الحل
بالتأكيد هذا الحل لا يغني عن إستخدام أنظمة الحوسبة السحابية المخصصة لهذا الأمر , ويوجد به عيوب وهي
– أي تعديل على المخزن يكون على الجميع مثال لو أخطأ أحد أفراد الفريق وحذف المخزن فأنه سيكون محذوف عند الجميع
– الرفع والتعديل للجميع أي أنه يمكن أن يحدث تعارض عند الرفع بنفس الوقت وعلى نفس الملفات
لذلك لا ينصح بهذا الحل عند زيادة أعضاء الفريق ,
طرق تساعد في تفادي العيوب
– عمل نسخ إحتياطي دوري للمخزن وأنصح بإستخدام برنامج ال Cobian Backup المجاني الذي يمكن إستخدامه لعمل نسخة إحتياطية بشكل دوري
– توزيع المخازن وعدم الإعتماد على مخزن واحد (trunks) لأنه في حال توفر حدوث مشكلة في المخزن فإنه يتعطل كل العمل
أتمنى أن تكون هذه المدونة مفيدة للجميع , دمتم بود إلى تدوينة أخرى