قبل از شروع این مقاله بهتر است ابتدا یک خاطرهی کوچک را تعریف کنم. مدتی پیش بود که برای سایت داکیومنتیشن یکی از پروژههای Open-Source سعی داشتم از vuepress که یک static site generator هست استفاده کنم. متاسفانه نسخهی بتایی که استفاده میکردم یک فیچر مورد نیازم را نداشت و مجبور شدم خودم بهآن این فیچر را اضافه کنم. سوروس را گرفتم، فیچر اضافه شد و ماجرا از اینجا شروع میشود ... commit lint : اول اجازه نداد که کامیت را انجام ...
در اولین قسمت این سری، گیت و در قسمت دوم ، SVN را بررسی کردیم؛ در این مقاله قصد داریم یک جمع بندی از این دو مقاله داشته باشیم. احتمالا در مورد این دو سیستم حرفهای زیادی شنیدهاید و احتمالا بیشتر آنها در مورد گیت نظر مساعدتری داشتهاند؛ ولی تفاوتهایی بین این دو سیستم هست که باید به نسبت هدف و نیازی که دارید آن را مشخص کنید. یکی از اصلیترین این تفاوتها این است که svn یک سیستم مرکزی است؛ ولی گیت اینگونه نیست که در ادامه تفاوت این ...
در قسمت قبلی ، اهمیت استفاده از سیستمهای کنترل نسخه را بیان کردیم و مفاهیم پایهای گیت را مورد بررسی قرار دادیم. در این قسمت مفاهیم پایهای SVN را مورد بررسی قرار میدهیم. SVN مخفف عبارت SubVersion هست و یک سیستم کنترل نسخهی رایگان و متن باز است که توسط شرکت کلاب نت حمایت میشود. به تعدادی از این سیستمها، سیستمهای «مدیریت پیکربندی نرم افزار» (Software Configuration Manager (SCM هم اطلاق میشود. در این سیستم فا ...
در این مقاله با دو سیستم
کنترل نسخه git و SVN آشنا شده و تفاوتهای آنها را برای تازهکاران بررسی میکنیم. ایده
اولیه نوشتن این مقاله زمانی بود که برای یک پروژهای، اعضای تیم ما دور هم
جمع شده و در مورد ابزارهای مورد استفاده بحث کردند و یک عده از گیت و
عدهای از SVN صحبت میکردند. بر این شدم که مقالهای نوشته و ابتدا به
معرفی آنها و سپس به مزایا و معایب هر کدام بپردازیم.
امروزه، استفاده از سیستمهای ک ...
تا چندی پیش شاید برای استفادهی از گیت و راه اندازی سرور عملیاتی آن در ویندوز، مشکلاتی مانند سبک راه اندازی آن که لینوکسی و کامندی بود، مانعی برای استفاده بود. ولی با استفاده از Bonobo Git Server که با ASP.NET MVC نوشته شدهاست و بصورت مدفون شده (embedded) از گیت استفاده میکند، راه انداختن سرور گیت خیلی آسان و با مراحلی خیلی کمتر و پسندیدهتر، قابل انجام است. من تا مدتی قبل، برای استفادهی شخصی به مدتی طولانی از Subversion برای نگهداری ...
فرض کنید برای رفع باگی در پروژهای از GitHub، ایدهای دارید. روند کاری اعلام آن، روشهای مختلفی میتواند داشته باشند؛ از باز کردن یک Issue جدید تا فرستادن یک فایل zip و غیره. اما روش استاندارد مشارکت در پروژههای Git، ارسال یک PR یا Pull Request است. در ادامه نحوهی انجام اینکار را به کمک امکانات توکار VS.NET بررسی خواهیم کرد.
ایجاد یک Fork جدید در GitHub
برای ارسال تغییرات انجام شده بر روی یک پروژه، نیاز است به ص ...
از نگارش 2012 ویژوال استودیو، امکان کار با مخازن Git، به صورت یکپارچه و توکار و بدون نیاز به ابزارهای جانبی، توسط آن فراهم شدهاست. در ادامه قصد داریم به کمک این ویژگی توکار، نحوهی ارسال یک پروژهی از پیش موجود VS.NET را برای اولین بار به GitHub بررسی کنیم.
تنظیمات مقدماتی GitHub
در ابتدا نیاز است یک مخزن کد خالی را در GitHub ایجاد کنید. برای این منظور به برگهی Repositories در اکانت GitHub خود مراجعه کرده و بر رو ...
برخی از تنظیمات پروژه نباید به مخازن سورس کنترل ارسال شوند؛ حال یا نیازی به این کار نیست یا مقادیر تنظیمات محرمانه هستند. چند بار پیش آمدهاست که پروژه را از سورس کنترل دریافت و مجبور شده باشید رشتههای اتصال و دیگر تنظیمات را مجددا ویرایش کنید، چرا که توسعه دهندگان دیگری مثلا فایلهای Web/App.config خود را به اشتباه push کرده اند؟ حتی اگر تنظیمات پروژه محرمانه هم نباشند (مثلا پسورد دیتابیسها یا ایمیل ها) این موارد میتوانند دردسر ساز شون ...
ابزار NuGet بسیار کار آمد و مفید است. یکی از مشکلات رایج هنگامی پیش میآید که پروژه را بهمراه بستههای نصب شده به سورس کنترل push میکنید. با این کار حجم زیادی از فایلها را به مخزن سورس کنترل آپلود میکنید و هنگام clone کردن پروژه توسط هر شخصی، این اطلاعات باید دریافت شوند. بدتر از این هنگامی است که برخی از بستهها از سورس حذف میشوند و باید به اعضای تیم پروژه اطلاع دهید که چه بستههایی باید دریافت و نصب شوند.
برای رفع این موا ...
پیش نیاز اگر در مورد TortoiseSVN و سورس کنترل اطلاعات پایه ندارید، کتاب مدیریت فایلهای یک پروژه نرم افزاری با استفاده از Subversion آقای نصیری را مطالعه کنید و همچنین سیستم پیگیری خطای YouTrack را نگاهی بیاندازید (البته اگر اطلاعی ندارید) . مقدمه هنگام کار روی یک پروژه، باگ ها، وظیفهها و موضوعاتی به شما واگذار میشود که باید انها را انجام دهید. هنگام commit کردن تغییرات، برای مشخص شدن اینکه تغییرات م ...