آموزش راه اندازی git server در ویندوز
قبل از اینکه شروع به خواندن مقاله کنید تاکید میشود که این اموزش جهت راه اندازی GIT بدون هیچ نرم افزار جانبی است که ممکن است فرایند های مختلفی را مانند مدیریت شاخه ها ایجاد Release و Merge را به خوبی به شما ندهد البته اگر شما تسلط کامل به دستورات Git دارد هیچ مشکلی رخ نخواهد داد.
پیشنهاد ویژه »» پیشنهاد میشود از Gitlab به صورت خصوصی استفاده کنید وبینه در آموزشی مستقل نحوه نصب Gitlab را در شبکه داخلی Lan روی سیستم عامل Ubuntu را منتشر کرده ایم هدف این کار رفع محدودیت ها و دور زدن تحریم ها است همچنین برخورداری از سرعت بسیار بالا در فرایند های روزمره استفاده از Gitlab
به جرات میتوان گفت که Git برترین سیستم مدیریت نسخه در دنیا است و معروف ترین سرور ارائه دهنده خدمات Git به صورت آنلاین همgithub نام دارد از دیگر سرویس های پرطرفدار به Gitlab هم میتوان اشاره کرد این وب سایت ها به طور کلی برای پروژه های خصوصی دارای محدودیت هایی هستند که نیاز به پرداخت هزینه دارد ، هر چند gitlab این سرویس را به صورت رایگان و نامحود ارائه میکند اما به دلایل استراتژیکی میتوان گفت بهتر است که سرور git را در شبکه داخلی راه اندازی کرد در ایران سیستم عامل اول برنامه نویس ها ویندوز است و در این آموزش روش راه اندازی git server را در یک شبکه داخلی مانند شبکه Lan شرکت یا محل کار خود را به شما کاربران وبینه آموزش می دهم.
طی چند روز گذشته به دلیل اختلالاتی که در شبکه اینترنت و دسترسی به برخی از سایت های خارجی به وجود آمد سرویس gitlab به مشکل خود و من تصمیم گرفتم که سرویس مدیریت نسخه گیت را در شرکت به صورت داخلی راه اندازی کنم.
مراحل انجام کار :
1- ابتدا Git را از سایت اصلی ان دانلود کنید و بعد از نصب در یکی از درایو ها مانند D یک پوشه به نام دلخواه مثلا Git_server ایجاد کنید.
2- وارد پوشه Git_server شوید و دستور زیر را وارد کنید
git init webine.git --bare
شما میتوانید به جای webine.git نام پروژه مورد نظر خود را ثبت کنید یا اینکه .git را از عنوان پروژه حذف کنید
تبریک میگویم شما Git Server را به همین سادگی راه اندازی کردید
مرحله دوم ایجاد clone از git server
حالا در یک محل دیگر در کامپیوتر خود مانند درایو E یک از سرور ایجاد شده خود یک clone بگیرد .
git clone D:/Git_server/webine.git
توجه حتما Back Slash ها در آدرس های ویندوز را به Slash تغییر دهید مثلا D:\Git_server\webine.git را به D:/Git_server/webine.git تغییر دهید در دستور فوق هم من این کار را انجام داده ام.
تا اینجا من یک سرور محلی ایجاد کردم و در یک مسیر دیگر از Repository ایجاد شده در سرور Clone گرفتم و از این به بعد طبق آموزش کار کردن با دستورات git میتوانم از سیستم مدیریت نسخه به صورت local استفاده کنم.
بعد از دستور فوق یک پوشه جدید با نام webine ایجاد میشود شما میتوانید فایل های پروژه خود را در این پوشه وارد کنید و با استفاده از نرم افزار github desktop سیستم کنترل نسخه را مدیریت کنید.
سپس با رفتن به منوی Add Local Repository و با انتخاب پوشه جدیدی که در مرحله دوم ایجاد شده میتوانید تغییرات را کنترل و commit کنید
استفاده به صورت شبکه داخلی
خوب اگر بخواهید این کار را در شبکه انجام دهید به صورتی که دیگر کامپیوترها به آن دسترسی داشته باشند باید ابتدا پوشه Git_server را Share کنید
و سپس در Control Panel وارد مسیر زیر شده Control Panel > Network And Sharing Center > Change advanced sharing settings و گزینه turn on network discovery را تیک بزنید.
تا اینجا هم زمینه های مربوط به اشتراک گذاری سرور ایجاد شده را فراهم کردید . حالا میخواهیم در شبکه داخلی از پروژه webine.git یک clone بگیرد.
ابتدا مطابق نامی که کامپیوتر سرور دارد یک مسیر به شکل زیر باید در نظر بگیرد
git clone //VAHID-PC/gitserver/webine.git
فراموش نکنید که \ را به / تغییر دهید.
بعد از گذشت مدتی به این نتیجه میرسید که خوب این روش با اینکه ساده است ولی یک مشکل دارد و آن عدم دسترسی به سرور در خارج از فضای شرکت است یعنی خارج از فضای lan خوب راه حل چیست ؟ از طرفی هم باید این فایل ها بسیار امن باشند و به صورت روزانه بکاپ گرفته شوند اینها همه مشکلات استفاده از LOCAL است راه حل چیست ؟! بعد از بررسی هایی که داشتم به این نتیجه رسیدم که به جای تخصیص یک کامپیوتر در LOCAL از SFTP و یک هاست استفاده کنید و سعی کنید که میزبانی فایل را در SFTP انجام شود نه در LOCAL با این روش میتوان از فایل ها بکاپ هم گرفت و در همه جا دسترسی باید داشت . فقط چند نکته مهم در این مورد عرض کنم که اگر میخواهید از SFTP استفاده کنید باید از هاستینگ استفاده کنید که GIT روی آن نصب باشد . توجه کنید که این روش نیاز به RAM و CPU بالایی ندارد و با حداقل ها هم جواب میدهد مثل 2 گیگ RAM و باید دستوراتی که در ابتدا در روی LOCAL انجام میدادید را با ورود به SSH هاست در همان مسیر اجرا کنید تا پورژه GIT شما INIT شود و سپس آدرس پروژه در هاست را در LOCAL میتوانید CLONE کنید. نکته دوم در مورد امنیت باید عرض کنم که پروژه را نباید در پوشه PUBLIC یا PUBLIC_HTML تعریف کنید بهتر است در HOME هاست خود این کار را بکنید.
باز اگر سوالی بود در قسمت دیدگاه مطرح کنید ...
البته با روی کار آمدن سرویس Gitea و نصب با کمک داکر روی vps ابونتو به خوبی مشکلات سرور خصوصی git حذف میشود.
وبینه در مقالات خود به تمامی سوالات شما راجع به طراحی انواع سایت از جمله طراحی سایت آموزشی، خبری، شرکتی و...پاسخ داده است.