Git یک سیستم کنترل نسخه توزیعشدهاست که به توسعهدهندگان اجازه میدهد، تغییرات در فایلهای پروژههای خود را ردیابی و به نسخههای مختلف از کد خود بازگردند. این ابزار در کار تیمی و مدیریت پروژههای نرمافزاری بسیار مفید است. به ویژه زمانی که چندین نفر روی یک پروژه کار میکنند. در کنار Git، Github یکی از محبوبترین پلتفرمهای میزبانی برای پروژههای Git است. این پلتفرم امکان همکاری در پروژهها، مدیریت مسائل (issues)، و بررسی کد (code review) را فراهم میکند.
در این مطلب از سایت لینوکس لرنینگ، روشهای نصب Git در لینوکس، تنظیمات اولیه پس از نصب، رفع مشکلات رایج و نکاتی برای استفاده بهتر از این ابزار را بررسی خواهیم کرد.
آشنایی بیشتر با گیت
Git به عنوان معروفترین و محبوبترین سیستم کنترل ورژن (VCS) در جهان، توسط بسیاری از برنامهنویسان و تیمهای توسعه نرمافزار برای مدیریت پروژههایشان استفاده میشود. در گذشته، مدیریت تغییرات پروژههای بزرگ، بهویژه زمانی که افراد بیشتری به تیم توسعهدهنده اضافه میشدند، کاری چالشبرانگیز بود. باگهای غیرمنتظره و مدیریت کدهای قدیمی به سختی امکانپذیر بود. Git با امکاناتی که ارائه میدهد، برای رفع این مشکلات بهوجودآمده و به رایگان در دسترس است.
سیستم کنترل ورژن (VCS) چیست؟
سیستم کنترل ورژن (Version Control System) که بهاختصار VCS نامیدهمیشود را به عنوان سیستم مدیریت سورس (SCM) نیز میشناسند. این سیستم وظیفه ردیابی و مدیریت تغییرات در کدهای پروژه را برعهده دارد. این سیستمها کمک میکنند تا برنامهنویسان:
- تغییرات ایجاد شده در کد را ردیابی کنند.
- به نسخههای قدیمی پروژه دسترسی داشتهباشند.
- کدهای مشکلدار را بازیابی کنند و باگها را رفع نمایند.
با استفاده از VCS، هر تغییری که در کد پروژه انجام شود، در یک پایگاهداده مخصوص ذخیره میشود. اگر مشکلی در کد ایجاد شود، تیم توسعه میتواند به راحتی به نسخههای قبلی بازگردد. از جمله معروفترین سیستمهای کنترل ورژن، میتوان به Git اشاره کرد.
کاربردهای استفاده از Git در لینوکس
دلایلی که باعث میشود بسیاری از توسعهدهندگان و تیمهای نرمافزاری به نصب Git در لینوکس و سایر سیستم عاملها روی بیاورند، عبارتند از:
مدیریت تغییرات ساده
Git امکان ثبت و ذخیره تغییرات در کدهای پروژه را بهصورت دقیق فراهم میکند.
بازیابی نسخههای قبلی
در هر زمان میتوانید به نسخههای قبلی پروژه دسترسی داشته باشید. بهعلاوه در صورت نیاز کدهای گذشته را بازیابی کنید.
پشتیبانی از همکاری تیمی
Git ابزارهای قدرتمندی برای همکاری تیمی ارائه میدهد. با کمک آنها اعضای تیم میتوانند بهصورت همزمان روی بخشهای مختلف پروژه کار کنند.
ویژگیهای Git در لینوکس
Git به عنوان یک سیستم کنترل ورژن، امکانات و ویژگیهای منحصر به فردی دارد که آن را از سایر سیستمهای مشابه متمایز میکند:
1. کارایی بالا
Git در مقایسه با سایر سیستمهای کنترل ورژن مثل CVS ،SVN و Mercurial عملکرد بهتری دارد. امکان انجام عملیاتهایی مثل تغییرات جدید، شاخهبندی (branching)، ادغام (merging) و مقایسه نسخههای مختلف کد در Git به راحتی فراهم است. Git از سیستم ذخیرهسازی توزیعی استفاده میکند که به جای تمرکز بر نام فایلها، محتوای فایلها را ثبت میکند.
2. امنیت بالا
Git برای ذخیرهسازی نسخههای مختلف کد، از یک الگوریتم رمزنگاری ایمن به نام SHA1 استفاده میکند. این الگوریتم تمام تغییرات و نسخههای مختلف کد را در مخزن Git بهصورت ایمن ذخیره میکند، بنابراین اطمینان دارید که هیچ تغییری بهصورت غیرمجاز انجام نخواهد شد.
3. انعطافپذیری بالا
یکی از ویژگیهای مهم Git، انعطافپذیری آن است. Git با پشتیبانی از چندین دستور و قابلیت سازگاری با سیستمعاملهای مختلف مثل ویندوز، مک و لینوکس، برای مدیریت پروژههای کوچک و بزرگ مناسب است.
بیشتر بخوانید: آموزش لینوکس
روشهای نصب گیت روی لینوکس
نصب Git در توزیعهای لینوکس به روشهای متفاوتی انجام میشود. بیشتر توزیعهای معروف لینوکس مانند Ubuntu ،Debian ،CentOS و Fedora از مدیران بستهای مانند apt و yum استفاده میکنند که نصب Git را آسان میکند. همچنین میتوان Git را از سورس کد نصب کرد تا به آخرین نسخه آن دسترسی داشت.
نصب Git در لینوکس بر روی توزیعهای مبتنی بر Debian (مانند Ubuntu)
Ubuntu و توزیعهای مبتنی بر Debian از مدیر بسته apt برای نصب نرمافزارها استفاده میکنند. نصب Git در این توزیعها بهسادگی با چند دستور انجام میشود.
- ابتدا لیست بستهها را بهروزرسانی کنید:
sudo apt update
این دستور مخازن بستهها را بهروزرسانی میکند تا مطمئن شوید که از آخرین نسخههای نرمافزارها استفاده میکنید.
- سپس، Git را با دستور زیر نصب کنید:
sudo apt install git
- برای اطمینان از نصب موفق، میتوانید نسخه Git را با دستور زیر بررسی کنید:
git –version
این دستور نسخه نصبشده Git را نمایش میدهد. اگر نسخهای نمایش داده شود، نصب به درستی انجام شدهاست.
نصب Git بر روی توزیعهای مبتنی بر Red Hat (مانند CentOS و Fedora)
توزیعهای مبتنی بر Red Hat مانند CentOS و Fedora از مدیر بسته yum یا dnf برای نصب نرمافزارها استفاده میکنند. برای نصب Git، مراحل زیر را انجام دهید:
- ابتدا لیست بستههای سیستم را بهروزرسانی کنید:
sudo yum update یا برای Fedora از ‘dnf’ استفاده کنید
- سپس، Git را با دستور زیر نصب کنید:
sudo yum install git یا برای Fedora از ‘dnf’ استفاده کنید
- پس از نصب، میتوانید نسخه Git را با دستور زیر بررسی کنید:
git –version
نصب Git از سورس کد
درصورتیکه نسخه موجود در مخازن توزیع لینوکس شما قدیمی است یا مایل به نصب آخرین نسخه هستید، میتوانید Git را از سورس کد نصب کنید. این روش نسبت به سایر روشهای نصب گیت روی لینوکس قدری دشوارتر است، اما امکان نصب نسخههای بهروزتر Git را فراهم میکند.
ابتدا پیشنیازهای لازم را نصب کنید.
- برای Debian/Ubuntu:
sudo apt install build-essential libssl-dev libcurl4-gnutls-dev libexpat1-dev gettext unzip
- برای CentOS/Fedora:
sudo yum groupinstall “Development Tools”
sudo yum install curl-devel expat-devel gettext-devel openssl-devel perl-devel zlib-devel
سپس، آخرین نسخه Git را از سایت رسمی دانلود کنید:
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-<VERSION>.tar.gz
- فایل دانلود شده را اکسترکت کرده و وارد پوشه آن شوید:
tar -xzvf git-<VERSION>.tar.gz
cd git-<VERSION>
سپس Git را کامپایل و نصب کنید:
make prefix=/usr/local all
sudo make prefix=/usr/local install
- برای اطمینان از نصب صحیح، دستور زیر را اجرا کنید:
git –version
تنظیمات اولیه Git پس از نصب روی لینوکس
بعد از نصب git روی لینوکس، باید به نحوه پیکربندی و تنظیمات اولیه گیت روی لینوکس توجه داشته باشید تا Git بتواند اطلاعات مربوط به شما را هنگام commit ذخیره کند. این اطلاعات شامل نام کاربری و ایمیل شماست که در هر commit ثبت میشود.
1. تنظیم نام کاربری
نام کاربری شما در Git نشاندهنده فردی است که commitها را انجام میدهد. برای تنظیم نام کاربری:
git config –global user.name “Your Name”
این نام در تمامی commitها به عنوان نام کاربر ثبت میشود.
2. تنظیم ایمیل
ایمیل شما نیز باید تنظیم شود تا Git بتواند اطلاعات بیشتری درباره commitهای شما ثبت کند. برای تنظیم ایمیل:
git config –global user.email “your-email@example.com”
توجه داشته باشید که این ایمیل باید همان ایمیلی باشد که در GitHub یا سایر سرویسهای مبتنی بر Git استفاده میکنید.
3. تنظیم ویرایشگر پیشفرض
ویرایشگر متنی که Git برای نوشتن پیام commit استفاده میکند، به طور پیشفرض vi است. اگر با این ویرایشگر راحت نیستید، میتوانید آن را به ویرایشگر دیگری مانند nano تغییر دهید:
git config –global core.editor “nano”
4. بررسی تنظیمات
برای مشاهده تمامی تنظیماتی که انجام دادهاید، میتوانید از دستور زیر استفاده کنید:
git config –list
این دستور لیستی از تمامی تنظیمات Git را نمایش میدهد.
رفع مشکلات رایج پس از نصب گیت در لینوکس
در حالیکه نصب Git در لینوکس معمولاً بهراحتی انجام میشود، ممکن است با برخی مشکلات مواجه شوید. در ادامه به روش رفع مشکلات رایج پس از نصب گیت در لینوکس میپردازیم:
1. خطای “command not found”
اگر پس از نصب Git با خطای git: command not found مواجه شدید، ممکن است Git به درستی نصب نشده باشد یا مسیر آن به متغیر PATH اضافه نشدهباشد. برای حل این مشکل، بررسی کنید که Git به درستی نصب و مسیر آن به متغیر PATH اضافه شدهباشد.
برای بررسی مسیر نصب Git، از دستور زیر استفاده کنید:
which git
اگر مسیری نمایش داده نشد، باید Git را مجدداً نصب کنید. سپس مطمئن شوید که مسیر آن به درستی تنظیم شدهاست.
2. مشکلات دسترسی
اگر در طول نصب یا استفاده از Git با خطاهای مربوط به دسترسی مواجه شدید، به احتمال زیاد مجوزهای کافی برای اجرای دستورات ندارید. استفاده از sudo برای اجرای دستورات میتواند این مشکل را حل کند:
sudo apt install git
یا در مواقعی که نیاز به تغییر فایلهای سیستمی دارید، از sudo استفاده کنید تا دسترسیهای لازم را داشته باشید.
3. نسخه قدیمی Git
در برخی توزیعهای لینوکس، نسخه موجود در مخازن رسمی قدیمی است. اگر به نسخه جدیدتری از Git نیاز دارید، میتوانید آن را از سورس کد نصب کنید، همانطور که در بخش نصب Git از سورس کد توضیح دادهشد.
4. مشکلات شبکه
در صورتی که به دلیل مشکلات شبکهای نتوانید Git را نصب کنید، میتوانید از VPN یا تنظیمات پروکسی برای دسترسی به مخازن بستهها استفاده کنید. همچنین، مطمئن شوید که ارتباط اینترنت شما پایدار است.
5. نصب ناقص
گاهی اوقات ممکن است نصب Git به دلیل قطع شدن شبکه یا مشکل دیگری ناقص باشد. در این مواقع، میتوانید فرایند نصب را دوباره اجرا کرده و از کامل بودن آن مطمئن شوید:
sudo apt install –reinstall git
آشنایی با GitHub
گیتهاب یکی از محبوبترین سرویسهای تحت وب برای میزبانی مخازن Git است. این سرویس به توسعهدهندگان امکان میدهد مخازن خود را بهراحتی با دیگران به اشتراک بگذارند و بهصورت گروهی روی پروژهها کار کنند.
ویژگیهای مهم GitHub
ذخیرهسازی مخازن بهصورت عمومی و خصوصی:
کاربران میتوانند مخازن خود را بهصورت عمومی یا خصوصی در GitHub نگهداری کنند.
مدیریت پروژه و همکاری تیمی:
GitHub ابزارهایی مانند Issue Tracker و Pull Requests را ارائه میدهد که به تیمهای توسعه کمک میکند تا کارهای خود را به راحتی مدیریت کنند.
ابزارهای بررسی کد:
امکان بررسی کدهای دیگران و پیشنهاد تغییرات از طریق GitHub فراهم است.
امکانات GitHub برای تیمها
GitHub با فراهمکردن ابزارهای مختلف برای همکاری تیمی، به توسعهدهندگان و مدیران پروژه کمک میکند که:
- فایلهای پروژه را مدیریت کنند.
- تغییرات را مستند کنند.
- تاریخچه کامل پروژه را در دسترس داشته باشند.
تفاوت Git و GitHub
گرچه Git و GitHub هر دو برای کنترل ورژن استفاده میشوند، اما تفاوتهای کلیدی بین آنها وجود دارد:
- Git یک سیستم کنترل ورژن است که بهصورت آفلاین و روی هر سیستمی قابلاستفاده است.
- GitHub یک سرویس آنلاین است. این سیستم به شما امکان میدهد مخازن Git را بهصورت آنلاین ذخیره و با دیگران به اشتراک بگذارید.
جمعبندی
نصب Git در لینوکس، یکی از ملزومات توسعهدهندگان نرمافزار است. Git به شما این امکان را میدهد که به راحتی نسخههای مختلف کد خود را مدیریت کرده و با تیمهای توسعه دیگر همکاری کنید. نصب Git در اکثر توزیعهای لینوکس بهراحتی از طریق مدیر بستهها انجام میشود، اما در صورتی که به نسخههای جدیدتری نیاز دارید یا مشکلاتی در نصب رخ میدهد، میتوانید Git را از سورس کد نصب کرده و مشکلات رایج را به راحتی برطرف کنید.
سوالات متداول
چگونه میتوان Git را روی لینوکس نصب کرد؟
برای نصب Git روی لینوکس، میتوانید از مدیر بستههای سیستمعامل خود (مثل APT در اوبونتو یا YUM در CentOS) استفاده کنید؛ دستور رایج نصب در اوبونتو: sudo apt install git.
از کجا بفهمیم که گیت با موفقیت نصب شدهاست؟
پس از نصب، با اجرای دستور git –version میتوانید مطمئن شوید که Git به درستی نصب شدهاست و نسخه آن را مشاهده کنید.