التخريب هو نظام تتبع إصدار مفتوح المصدر. يحتفظ بالملفات في مستودع مركزي ويوفر التحكم في الإصدار على الدلائل أو الملفات. بصفتك مطورًا ، يمكنك سحب ملفات المشروع من المستودع وإجراء تغييرات عليها ودفعها مرة أخرى.
يحتوي التخريب أيضًا على مكون خادم يمكنك استخدامه لاستضافة مشاريعك. إنه يعمل مثل خادم الملفات العادي.
كيفية تثبيت التخريب
التخريب سهل التثبيت. يمكنك استخدام الأمر المناسب لكي تبدأ التوزيعة الخاصة بك:
# ديبيان ، أوبونتو
sudo apt تثبيت التخريب apache2 libapache2-عصري-svn
# CentOS ، فيدورا ، RHEL
sudo dnf تثبيت تخريب apache2 mod_dav_svn
لاحظ أن هذا الأمر أيضًا يقوم بتثبيت خادم الويب Apache2. ستحتاج إلى خادم ويب إذا كنت تريد الوصول إلى مستودع Subversion عبر HTTP أو WebDAV. يمكنك أيضًا استخدام HTTPS ، ستحتاج فقط إلى تثبيت شهادة رقمية وتكوينها للقيام بذلك.
بمجرد تشغيل هذا الأمر ، يمكنك التحقق من تثبيت التخريب بشكل صحيح. يجب أن تكون الآن قادرًا على تشغيل ملف svn الأمر ويمكنك رؤية الإصدار الحالي باستخدام ملف --إصدار اختيار:
تكوين الخادم مع التخريب
إذا سارت عملية التثبيت بسلاسة ، فيمكنك الآن البدء في العمل على تكوين المستودع الذي ستستخدمه مع
svn. بالطبع ، ستحتاج إلى إنشاء مستودع جديد لهذا الغرض. أولاً ، قم بإنشاء مجلد في دليل جذر لوضع المستودع الخاص بك:sudo mkdir / التخريب
إذا كنت بحاجة إلى الوصول إلى المستودع الخاص بك باستخدام WebDAV عبر HTTP ، فستحتاج إلى منح ملكية Apache للدليل الخاص به. منذ استخدام اباتشي www-data المستخدم بشكل افتراضي ، قم بتفويض هذا المستخدم على النحو التالي:
sudo chown www-data: www-data / subversion
يمكنك الآن التبديل إلى ملف www-data المستخدم والبدء في العمل على المستودع الخاص بك. الأمر الذي ستستخدمه لتسجيل الدخول باسم www-data المستخدم هو:
sudo su -s / bin / bash www-data
أنت الآن أحد مستخدمي Apache وبعد هذه الخطوة ، يمكنك إنشاء مستودع Subversion الخاص بك على النحو التالي:
svnadmin خلق /subversion/myrepo
لديك الآن مستودع التخريب. لجعل هذا المستودع أكثر أمانًا وتحديد مستخدميه ، فإن الخطوة التالية هي إنشاء مستخدم وتعيين كلمة مرور له. للقيام بذلك ، استخدم الأمر التالي:
htpasswd -cmb / subversion / passwd myadmin mypass
وفقًا لهذا الأمر ، سيكون اسم المستخدم الخاص بك myadmin وستكون كلمة مرورك تجاوز. يمكنك تغيير هذه القيم إلى كل ما هو مناسب لظروفك.
مستودع التخريب الخاص بك جاهز الآن للاستخدام. في هذه المرحلة ، يمكنك الخروج من www-data المستخدم باستخدام خروج يأمر.
يمكنك الآن إرسال المشروع أو الملف المطلوب إلى الريبو الخاص بك باستخدام الأمر أدناه:
sudo svn الاستيراد <عنوان مشروعك> ملف: /// subversion / myrepo -m "الالتزام الأول"
يستخدم هذا الأمر ملحق يستورد المعلمة لدفع كل شيء في مجلد المشروع الخاص بك إلى مستودع Subversion الخاص بك. أثناء القيام بذلك ، تحتاج إلى إضافة رسالة الالتزام بامتداد م معامل.
استخدام طرق الوصول في التخريب
ربما لاحظت أنك تستخدم ملف ملف:// بروتوكول لإضافة مشروع إلى المستودع الخاص بك. هذا مجرد واحد من عدة بروتوكولات شبكة يمكنك استخدامها للوصول إلى مستودع svn. يمكنك أيضًا استخدام بروتوكول WebDAV عبر HTTP أو HTTPS ، أو مخصص التخريب svn بروتوكول.
الوصول المباشر إلى المستودع
كما رأيت ، يمكنك استخدام ملف ملف:// بروتوكول للوصول إلى مستودع محلي. إليك كيفية التحقق من الريبو المحلي في دليلك الحالي:
ملف svn co:///subversion/myrepo
عندما تقوم بسحب الريبو ، يعرض svn قائمة بالملفات التي يحتوي عليها:
الوصول باستخدام WebDAV
لدمج مستودع Subversion الخاص بك مع Apache ، ستحتاج إلى تكوين بعض الإعدادات.
للخطوة الأولى ، قم بتنشيط ملف داف, dav_svn، و dav_fs الوحدات النمطية باستخدام الأوامر التالية:
sudo a2enmod dav dav_fs dav_svn
بعد تنشيط الوحدات المطلوبة ، يمكنك الآن تحرير ملف /etc/apache2/mods-enabled/dav_svn.conf ملف. قم بإنشاء الملف إذا لم يكن موجودًا بالفعل ، وقم بتغيير محتوياته على النحو التالي:
<الموقع / التخريب>
DAV svn
SVNPath / التخريب / myrepo
AuthType أساسي
AuthName "مستودع التخريب"
AuthUserFile / التخريب / passwd
يتطلب مستخدم صالح
</Location>
ال AuthUserFile الإعداد يشير إلى الملف الذي قمت بإنشائه مسبقًا باستخدام htpasswd. ستؤدي إضافته هنا إلى منح حق الوصول إلى المستودع لجميع المستخدمين المذكورين في الملف ، بشرط أن يقوموا بالمصادقة بكلمة مرور صالحة.
بمجرد إنشاء هذا الملف وحفظه ، أعد تشغيل خدمة Apache2 باستخدام الأمر التالي:
سودوsystemctlإعادة بدءاباتشي 2.الخدمات
الآن ، عندما تفتح متصفح ويب وتنتقل إلى http://localhost/subversion/، سترى محتويات المستودع الخاص بك. عندما تذهب إلى هذا العنوان ، سيطلب منك اسم المستخدم وكلمة المرور:
تسجيل الدخول باسم المستخدم (على سبيل المثال myadmin) وكلمة المرور (تجاوز) التي أعددتها مسبقًا. يمكنك الوصول إلى مستودع Subversion الخاص بك باستخدام WebDAV بعد إدخال اسم المستخدم وكلمة المرور:
الوصول باستخدام SSL و WebDAV
ال https: // البروتوكول له نفس التكوين تقريبًا مثل http: // البروتوكول ، مع بعض الاختلافات المهمة فقط. لإعطاء مثال ، فإن .conf الملف الذي تحتاج إلى استخدامه أثناء التكوين مختلف. تحتاج أيضًا إلى تثبيت شهادة رقمية. لأنه كما تعلم ، هذا هو منطق العمل الخاص بـ طريقة تشفير SSL.
تستطيع إنشاء شهادة رقمية بنفسك ، أو يمكنك تثبيت واحدة صادرة عن السلطة المختصة. بافتراض أنك قمت بتثبيت شهادة رقمية ، فإن ما عليك القيام به بسيط.
الاختلاف في هذه الخطوة هو التغييرات التي ستجريها في ملف التكوين. يوجد أدناه نموذج لملف التكوين لاستخدام SSL و WebDAV:
<الموقع / التخريب>
تشغيل DAV
SSLRequireSSL
خيارات لا أحد
AuthType أساسي
AuthName "مستودع التخريب"
AuthUserFile / التخريب / passwd
يتطلب مستخدم صالح
</Location>
كما ترى ، الفرق بين https: // و http: // البروتوكولات ليست كثيرة من حيث التغييرات في ملف التكوين. بعد هذه التغييرات ، ستحتاج إلى إعادة تشغيل اباتشي 2 الخدمات. يجري أعد تشغيل systemctl apache2.service لنفعل ذلك.
لماذا نستخدم التخريب؟
كمتعقب للإصدار ، يتذكر Subversion كل تغيير يتم إجراؤه على الملفات والأدلة. يتيح لك الوصول إلى الإصدارات القديمة من البرامج أو المستندات التي تعمل بها والعثور على الاختلافات بينها. هذا يجعل من السهل إدارة المشاريع ، خاصةً إذا كان فريق التطوير لديك كبيرًا أو موزعًا.
هناك العديد من أنظمة التحكم في الإصدارات لنظام التشغيل Linux بخلاف Subversion ، والتي قد ترغب في وضعها في الاعتبار.