SVN چیست؟
پنجشنبه, ۸ خرداد ۱۳۹۳، ۱۱:۳۳ ب.ظ
SVN یا Subversion Version Control به معنی مهار نگارش زیر نگارش است. این نرم افزار به عنوان قلب یک سیستم Repository قرار می گیرد. به بیان سادهتر ما یک مخزن (Repo) داریم که یه جوری می خوایم محتویاتش را با دیگران به اشتراک بگذاریم و به اونها این امکان رو بدیم که این محتویات رو به روز کنن، ولی تو این اشتراک دوست نداریم کار هیچ کس ، به اطلاعات مخزنمون آسیب برسونه. اینجاست که پای یک سیستم کنترل نسخه (Version Control) به میون می آد. این سیستم تمامی تغییرات مخزن رو حفظ می کنه و به کاربرای سیستم امکان می ده تا به خیال راحت به صورت گروهی اطلاعات مخزن رو دست کاری کنن، بدون اینکه خطر از دست رفتن و یا دوباره نویسی اطلاعات پیش بیاد.
خوب این تعاریف رو با یک مثال کامل میکنم:
قبل از شروع کار با svn باید ابتدا اون رو به صورت زیر نصب کنید:
sudo apt-get install subversion
حالا فرض کنیم یک سروری این قابلیت رو به ما میده و قراره که ما بخشی از سورس پروژه مون رو توش به اصطلاح commit کنیم. خوب کافیه از url ای که برای ما تخصیص داده شده استفاده کنیم و دستور زیر رو بزنیم:
svn co https://svn.url/project1
یا
svn checkout https://svn.url/project1
باید در خروجی ی چیزی شبیه عبارت زیر رو بگیرید که به معنای درست انجام شدن کار هست:
Checked out revision 0.
بعد یک دایرکتوری به نام project1 برای شما ایجاد میشه. حالا باید سورس پروژه رو داخل اون دایرکتوری کپی بکنید. بعد از کپی کردن اون اگر میخواین سورسی رو add کنید به سرور میتونید از دستور زیر استفاده کنید:
svn add <SourceFile>
توی پرانتز بگم برای حذف کردن از روی سرور میتونید به جای add از rm و rm --force استفاده کنید.
حالا اگر بخواین ی وضعیتی از svn خودتون داشته باشید کافیه دستور زیر رو وارد کنید:
svn status
در نهایت هم باید دستور زیر رو بزنید. میتونید ی توضیح مختصری هم برای سورستون بذارید که من از عبارت Initial version استفاده کردم :
svn ci -m "Initial version"
۹۳/۰۳/۰۸