درخواست های ارتباط
جستجو
لیست دوستان من
صندوق پیام
همه را دیدم
  • در حال دریافت لیست پیام ها
صندوق پیام
رویدادها
همه را دیدم
  • در حال دریافت لیست رویدادها
همه رویدادهای من
تخفیف های وب سایت
همه تخفیف ها

عضویت در

کانال تلگرام

توسینسو

اطلاعات مطلب
مدرس/نویسنده
مهدی عادلی فر
امتیاز: 166460
رتبه:6
176
202
302
1618
مهدی عادلی، بنیان گذار TOSINSO. کارشناس ارشد نرم افزار کامپیوتر از دانشگاه صنعتی امیرکبیر و #C و جاوا و اندروید کار می کنم. در زمینه های موبایل و وب و ویندوز فعالیت دارم و به طراحی نرم افزار و اصول مهندسی نرم افزار علاقه مندم. پروفایل کاربر

Source control ها قسمت اول: معرفی source controlها و لزوم استفاده از آنها

تاریخ 26 ماه قبل
نظرات 0
بازدیدها 656
سلام به دوستان ITPRO. تصور کنید که با یکی از دوستانتان در حال فعالیت بر روی یک پروژه هستید. یعنی قسمتی از کار را شما برعهده دارید و انجام می دهید و قسمتی دیگر را دوست شما انجام می دهد. حال شما چگونه با همدیگر هماهنگ می شوید؟ یعنی چگونه دوست شما از کارهایی که شما انجام داده اید مطلع می شود و یا شما چطور به کارهایی که اوانجام داده است دسترسی خواهید داشت؟ خب راه معمول و ساده ای که الان هم انجام می شود و اولین راهی است که به فکر می رسد این است که شما کارهایی که از پروژه انجام داده اید را بر روی فلش بریزید و به دوستتان نشان دهید و او نیز فایل های پروژه خود را بر روی فلش بریزد و به شما بدهد. حال این راه حل چه مشکلاتی می تواند داشته باشد؟ خب اولین مشکل این که شما دو تا پروژه دارید یا از یک پروژه دوتا نسخه دارید حالا چطوری اینها را یکی کنید که بتوانید نتیجه کار دو نفره را نشان دهید؟ خب برای این هم یکی از شما یا هردوی شما باید یکی دو ساعت وقت بگذارد و تغییرات هر دو را اعمال کند و یک پروژه واحد را بسازد.

حالا برای این کار باید بر روی کارهایی که از دوطرف اعمال شده کاملا مسلط باشد. به شما قول می دهم که این کار بسیار خسته کننده خواهد بود. برای مثال اگر خطایی پیدا شود چه مشکلی پیش خواهد آمد؟ اگر یکی از شما مسئول UI باشید و یکی دیگر مسئول کد backend باشد چه؟ با تخصصی شدن کار ها استفاده از این روش سخت خواهد بود. مشکل دیگری که ممکن است پیش بیاید این است که تصور کنید که نام پروژه شما MyProject است. حالا شما تغییراتی را بر روی پروژه انجام می دهید و شاید در قالب این تغییرات کدهایی را حذف کنید. ولی برای این که کد قبلی را هم داشته باشید که اگر مشکلی پیش آمد آن را دوباره برگردانید پروژه را در یک پوشه دیگر به نام MyProject2 ذخیره می کنید. بعد از یک مدت خواهید دید که چند تا پوشه MyProject دارید که پسوند عددی مختلف دارند و یا پسوند تاریخ دارند. حال ببینید که چه حجمی از فضای شما اشغال می شود. اینجاست که اگر بخواهید به دنبال کدی بگردید باید بگوییم پیدا کنید پرتقال فروش را ....

شاید شما بگویید که خب من که تنهایی بر روی یک پروژه کار می کنم و با کسی روی پروژه کار نمی کنم پس مشکلی برایم پیش نمی آید. ولی اینطور نیست. اگر شما تنها بر روی یک پروژه کار می کنید و دوست یا تیمی ندارید باز به مشکل برمی خورید. در نظر بگیرید که شما در حال کار بر روی پروژه هستید. بعد از یک مدت به این نتیجه می رسید که راهی که رفته اید اشتباه بوده و از یک مرحله از پروژه باید با یک روش دیگر پیش می رفته اید. در این صورت باید کارهایی را که انجام داده اید را به طور دستی حذف کنید و تغییرات جدید را اعمال نمایید. که این کار هم به وقت نیاز دارد و باعث می شود که پیشرفت پروژه کم شود. و یا اگر خود شما بر روی دوعدد کامپیوتر مشغول برنامه نویسی هستید. برای مثال هم در خانه بر روی پروژه کار می کنید و هم سرکار بر روی پروژه کار می کنید مشکلاتی در کار با فلش و سی دی و .... برای شما پیش خواهد آمد. حال اگر برای هارد شما مشکلی پیش بیاید و یا لپتاپ شما دزدیده شود آن وقت است که باید فریاد از دل برآورید. برای حل این مشکلات در کار های تیمی و حتی کار های شخصی از version control و یا source control استفاده می شود.

Source Control چیست؟


Source control ها قسمت اول: معرفی source controlها و لزوم استفاده از آنها


سورس کنترل یک مکانیزمی است که امکان می دهد که یک پروژه بر روی آن قرار گیرد و تغییرات در آن مدیریت شود و همچنین سورسی که بر روی آن است مدیریت شود. به شکلی که همه ی تغییرات بر روی پروژه را به صورت بهینه ای در خود نگهداری می کند و این قابلیت را دارد که هر وقت یک مجموعه تغییرات بر روی پروژه اعمال شد آن را در یک رکورد ذخیره می کند و تغییرات فایل ها را اعمال می کند و همچنین امکان قرار دادن کامنت و توضیحات را نیز می دهد که اعضای تیم یا خود شخص متوجه بشود که در تغییری که ایجاد شده است کدام فایل های تغییر کرده اند و کدام فایل ها دست نخورده باقی مانده اند. با استفاده از سورس کنترل شما همیشه مطمئن هستید که آخرین ورژن برنامه را دارید و اگر ویژگی هایی به برنامه اضافه شده است و توسط برنامه نویس مربوطه نهایی شده است در پروژه وجود دارد و شما لازم نیست نگران آن باشید که این تغییرات را خودتان اعمال کنید. در ضمن هر وقت که شما بخواهید که سورس را به عقب برگردانید و تغییراتی را که بر روی پروژه انجام داده اید منحل کنید به سادگی می توانید این کار را انجام دهید و لازم نیست که تغییرات را به صورت دستی خنثی نمایید.

با استفاده از سورس کنترل شما می توانید ببینید که هر تغییر در چه تاریخی و توسط کدام یک از اعضای تیم انجام شده است. سورس کنترل کل تاریخچه تغییرات برنامه را در خود نگهداری می کند ولی نه به شکلی که گفتیم که هر بار یک پروژه از اول ساخته شده باشد بلکه فقط فایل هایی را که تغییر کرده است را در تاریخچه اش اضافه می کند. به همین دلیل استفاده از فضای ذخیره سازی پروژه هم بسیار بهینه استفاده می شود. در حال حاضر همه تیم های برنامه نویسی پروژه های خود را بر روی سورس کنترل نگهداری می کنند و مدیریت سورس خود را به آن داده اند. در حال حاضر سورس کنترل های متفاوتی وجود دارند که معروف ترین آن ها Git می باشد ولی علاوه بر آن می توان از SVN و TFS نیز نام برد. البته فقط اینها سورس کنترل های موجود نیستند ولی معروفترینشان این 3 تا می باشد. در این مطلب به معرفی سورس کنترل و لزوم استفاده از آن پرداختیم در قسمت های بعدی به بررسی سورس کنترل ها می پردازیم.ITPRO باشید
Source control ها قسمت اول: معرفی source controlها و لزوم استفاده از آنها




نویسنده: مهدی عادلی فر
منبع: Itpro
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد.

برچسب ها
ردیف عنوان
1 Source control ها قسمت اول: معرفی source controlها و لزوم استفاده از آنها
2 source controlها قسمت دوم: انواع سورس کنترل ها و خصوصیات هرکدام از آنها
3 Source control ها قسمت سوم: عملیات عمومی سورس کنترل Git
4 Source control ها قسمت چهارم: عملیات عمومی سورس کنترل TFS
دوره مجموعه کل دوره
مطالب مرتبط

در حال دریافت اطلاعات

نظرات
هیچ نظری ارسال نشده است

    برای ارسال نظر ابتدا به سایت وارد شوید