در قسمت قبلی تقریبا تمامی مواردی را که برای اجرای یک سرور در سندباکس، نیاز بود را بررسی و نصب کردیم. از مایاسکیوال تا نرمافزاری جهت مدیریت اوبونتو سرور که تقریبا اکثر آنان را به شکل دلخواه تنظیم و سفارشی نمودیم. از این پس اگر هر برنامه مبتنی بر وبی را با استفاده از زبان پیاچپی بنویسید؛ در داخل سندباکس اوبونتو سرور قابلیت اجرا خواهد داشت. برای آزمایش این سندباکس میتوانید؛ نرمافزار وردپرس را دانلود کرده و در سندباکس نصب کنید.
اکثر اوقات نیاز داریم پروژههای خود را به نحو بهتری کنترل نسخه و یا مدیریت کنیم؛ نرمافزار گیت یکی از نرمافزارهای مطرح برای مدیریت و کنترل نسخه پروژهها است؛ در این آموزش به نحوه نصب، تنظیم و استفاده از این نرمافزار در اوبونتو سرور خواهیم پرداخت. علاوه بر این سعی خواهیم کرد ابزارهای بیشتری را برای مدیریت پروژه آزمایش و تنظیم کنیم تا در مورد نوشتن برنامههای بزرگتر در سندباکس مشکل خاصی نداشته باشیم. مدیریت خطا و اشکالات از کدهای نوشته شده نیز یکی از مهمترین بخشهایی است که بعد از انجام یک پروژه باید توسط توسعه دهنده یا افراد دیگر انجام شود؛ محیط سندباکس محیط خوبی برای اشکال زدایی و رفع باگ از پروژههای مبتنی بر وب است که نحوه نصب چند ابزار و رفع باگ از کدهای پیاچپی را در اوبونتو سرور نیز به صورت عمیق تر آموزش خواهیم داد.
نصب و تنظیم اوبونتو سرور به صورت سندباکس (قسمت اول)
نصب و تنظیم اوبونتو سرور به صورت سندباکس (قسمت دوم)
نصب و تنظیم اوبونتو سرور به صورت سندباکس (قسمت سوم)
نصب و تنظیم اوبونتو سرور به صورت سندباکس (قسمت چهارم)
نصب و تنظیم اوبونتو سرور به صورت سندباکس (قسمت پنجم)
نصب و تنظیم اوبونتو سرور به صورت سندباکس (قسمت آخر)
نصب چند ابزار برای مدیریت و نصب برخی اجزاء پیاچپی؛
برای نصب اجزاء و برخی ماژولهای مورد استفاده در پیاچپی از ابزار «PEAR» و «PECL» استفاده میشود. ابزار مذکور به راحتی در اوبونتو و از طریق مخازن قابل نصب هستند برای نصب ابزار مذکور در خط فرمان دستورات زیر را وارد کنید.
ehsan@sandbox ~ % sudo apt-get install php5-dev php-pear -y
اگر ابزار بالا با موفقیت نصب شدند، با استفاده از دستورات «sudo pear» و «sudo pecl» خواهید توانست، اجزاء و ماژولهای مورد نیاز خود را برای استفاده در پیاچپی بارگیری و نصب کنید؛ بعد از آن با استفاده از دستورات فعال و غیر فعال کردن ماژول در پیاچپی باید این ماژولها را فعال کنید؛ در برخی مواقع علاوه بر فعال کردن ماژول مرتبط را باید در تنظیمات «php.ini» آن جزء یا ماژول نیز تنظیم شود.
«PECL» ابزاری است که برای نصب افزونههای پیاچپی کاربرد داشته و در زمانی که «PEAR» نصب میشود؛ این ابزار نیز در سیستم نصب خواهد شد. تفاوت اصلی این دو ابزار در این است که این ابزار کدها را که به زبان سی هستند را دریافت کرده و بعد از کامپایل در سیستم نصب میکند. به عنوان نمونه یکی از نرمافزارهای کاربردی که ممکن است در سرور اوبونتو نصب شود؛ نرمافزار دروپال است که به یک ماژول خاص برای بارگزاری «Upload» اطلاعات نیاز دارد. برای نصب این ماژول دستور زیر را اجرا میکنیم.
ehsan@sandbox ~ % sudo pecl install uploadprogress
برای آنکه این ماژول در سیستم فعال باشد باید تغییراتی را در تنظیمات پیاچپی انجام دهیم. برای اینکار از دستور زیر استفاده میکنیم تا تنظیمات جدیدی را برای این ماژول بسازیم.
دستور فعال کردن ماژول برای پیاچپی به شکل زیر است.
ehsan@sandbox ~ % sudo php5enmod uploadprogress
سپس بعد از آنکه ماژول فوق با موفقیت فعال شد، باید کارساز وب آپاچی2 را نیز مجددا راهاندازی کنید. برای رااندازی مجدد آپاچی از دستور زیر استفاده کنید.
ehsan@sandbox ~ % sudo service apache2 restart
* Restarting web server apache2
نصب و استفاده از ابزار مدیریت بستههای مورد استفاده بری زبان پیاچپی با نام کومپوزر «Composer»؛
برای نصب کومپوزر از نرمافزار کورل «CURL» که یک مدیر دانلود خط فرمانی و تحت مجوز MIT است استفاده میکنیم. برای دریافت ابزار مذکور دستور زیر را در خط فرمان اجرا کنید. این دستور فایل اجرایی فوق را بارگیری کرده و خروجی را به فایل پیاچپی به وسیله نماد «|» لولهکشی خواهد کرد.
curl -sS https://getcomposer.org/installer | php
حال اگر بخواهید تمامی کاربران بتوانند به آن دسترسی داشته باشند؛ باید آن را به شاخه عمومی منتقل کنیم. برای اینکار دستور زیر را در خط فرمان اجرا کنید.
ehsan@sandbox ~ % sudo mv compoer.phar /usr/local/bin/composer
حال اگر دستور زیر را اجرا کنید باید با خروجی مشابهی روبه رو شوید.
ehsan@sandbox ~ % composer about
Composer – Package Management for PHP
Composer is a dependency manager tracking local dependencies of your projects and libraries.
See https://getcomposer.org/ for more information.
با استفاده از دستور زیر و عبارت کلیدی «selfupdate» بعد از دستور «composer» میتوان نرمافزار «PECL» را بهروزرسانی کرد.
ehsan@sandbox ~ % composer selfupdate
You are already using composer version 3d962879a8bb9874a6d8b2eeb90f3d13b153d174.
سپس با استفاده از دستورات زیر تغییراتی را نیز در فایل تنظیمات بش «bashrc» اعمال کنید.
sed -i ‘1i export PATH=”$HOME/.composer/vendor/bin:$PATH”‘ $HOME/.bashrc
گیت «GIT» چیست؟
گیت نرمافزار آزاد و متنبازی است که برای مدیریت و کنترل نسخه پروژههای نرمافزاری مورد استفاده قرار میگیرد. گیت توسط لینوس تروالدز ایجاد شدهاست و امروزه در دنیا توسط اکثر برنامهنویسان و توسعهدهندگان مورد استفاده قرار میگیرد. وبسایت معروف و محبوب گیتهاب «GitHUB» نیز که برای میزبانی سورس نرمافزارهای متنباز و حتی غیر متنباز مورد استفاده قرار میگیرد نیز از نرمافزار گیت استفاده میکند؛ برای ارسال و دریافت کدهای نوشته شده به گیتهاب هم باید از نرمافزار گیت استفاده کرد که در برخی سیستمعاملها یک واسط گرافیکی برای دسترسی بهتر در نظر گرفته شدهاست. بر اساس تعریفی که در ویکیپدیا آمده است؛ «گیت (به انگلیسی: Git) یک نرمافزار آزاد و متنباز برای بازنگری کد منبع توزیع شده و مدیریت منبع کد است که برروی سرعت تاکید میکند. گیت ابتدا برای توسعه لینوکس توسط لینوس تروالدز به وجود آمد و اکنون پروژههای فراوانی از آن الهام گرفتهاند. هر دایرکتوری کاری در گیت یک مخزن کامل با تاریخچه کامل تغییرات و قابلیت بازنگری تغییرات است و برای کار با آن نیازی به دسترسی به شبکه یا سرور مرکزی وجود ندارد. گیت یک نرمافزار آزاد است که تحت عنوان جیپیال نسخه ۲ توزیع شده است.» (ویکیپدیا، دانشنامه آزاد)
از دیگر مدیران پروژه که برای ارسال و دریافت کد به کار میروند میتوان به نرمافزار بازار «Bazaar» یا اسویان «SVN» اشاره داشت. بازار در حال حاضر توسط کنونیکال پشتیبانی میشود. با این وجود گیت محبوبیت بیشتری داشته و در پروژههای بیشتری در حال استفاده است. با استفاده از این ابزارها دیگر نیازی به ارسال اطلاعات نداشته و با هر گاه پروژه را تغییر دادید با اجرای دو یا چند خط دستور در خط فرمان، پروژه شما در وبسایت مورد نظر به صورت برخط همگام خواهد شد و تغییرات با پروژه موجود در اینترنت بههنگامسازی میشود. در این هنگام تاریخچهای از ارسال و تغییرات توسط گیت ذخیره میشود که برای مدیریت یک پروژه بسیار کاربردی است. در این مطلب قصد ندارم تا تمامی مواردی را که در گیت وجود دارد در یک مطلب آموزش دهم؛ بلکه قصد دارم نحوه نصب و برخی تنظیمات آن را در اوبونتو سرور با هم بررسی کنیم.
در این نوشته معرفی و نصب چند ابزار خواهیم پرداخت که همگی آنان برای کار با گیت ایجاد شدهاند. یکی از این ابزارها «gitolite» نام دارد که برای میزبانی از گیت به کار رفته و مخازن را میزبانی میکند. نرمافزار بعدی گیتوب «gitweb» که ابزاری تحت وب برای مدیریت و مشاهده تاریخچه گیت است. نرمافزار دیگری را نیز در قسمت بعدی با هم بررسی خواهیم کرد که «etckeeper» نام دارد. این نرمافزار برای نگاهداری تنظیمات موجود در سرور به کار رفته و آنان را نیز توسط گیت ذخیره میکند.
برای نصب این نرمافزارها توسط سیستمعامل خود و از طریق اساساچ به محیط سندباکس و سیستمعامل اوبونتو سرور متصل شوید. بعد از اینکه پیغام اعلان خط فرمان اوبونتو را مشاهده کردید؛ قادر به نصب نرمافزارهای مورد نیاز توسط ایپیتی خواهید بود. برای نصب ابزار مورد نیاز دستور زیر را در خط فرمان رونویسی و درج کنید تا ابزار فوق در اوبونتو نصب شوند.
ehsan@sandbox ~ % sudo apt-get -y install git gitolite
بعد از آنکه دو ابزار فوق را در اوبونتو سرور نصب کردید؛ کاربر جدید را که باید توسط نرمافزار «gitolite» استفاده شود را نیز بسازید. برای ساخت کاربر در گنو/لینوکس میتوان از طریق خط فرمان نیز این کار را انجام داد. دستوری که برای ساخت کاربر در گنو/لینوکس به کار میرود بسیار ساده است. توسط دستور زیر کاربر مورد نیاز نرمافزار «gitolite» را میسازیم.
ehsan@sandbox ~ % sudo adduser –system –shell /bin/bash –gecos ‘Git SCM’ –group –disabled-password git
Adding system user `git’ (UID 106) …
Adding new group `git’ (GID 112) …
Adding new user `git’ (UID 106) with group `git’ …
Creating home directory `/home/git’ …
بعد از اجرای دستورات فوق کاربری با نام گیت «git» در سیستم ساخته خواهد شد. برای اینکه بتوانید به این کاربر نیز دسترسی داشته باشید؛ باید یک کلید عمومی نیز برای کاربر فوق بسازید؛ برای ساخت یک کلید عمومی برای کاربر مذکور دستور زیر را نیز در خط فرمان اجرا کنید.
ehsan@sandbox ~ % ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/ehsan/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/ehsan/.ssh/id_rsa.
Your public key has been saved in /home/ehsan/.ssh/id_rsa.pub.
The key fingerprint is:
01:b4:1b:27:61:f1:54:94:9a:9a:8a:b9:82:00:7d:0b ehsan@sandbox
The key’s randomart image is:
+–[ RSA 2048]—-+
| .*..oo. |
| . * . |
| . + +o |
|. E . =o. |
|. o ..oS |
|. . o |
|o o . |
|o o . |
| … |
+—————–+
سپس کلید ساخته شده را در مکانی از سیستم رونویسی و درج کنید که توسط تمامی کاربران قابل مشاهده باشد. شاخه موقتی «tmp/» در سیستم توسط اکثر کاربران قابل مشاهده است. برای همین کلید ساخته شده را با استفاده از دستور رونویسی «copy» به آن پوشه رونویسی میکنیم.
ehsan@sandbox ~ % cp ~/.ssh/id_rsa.pub /tmp/local.pub
سپس برای تنظیم ابزار «gitolite»، دستور زیر را در خط فرمان اجرا کنید.
ehsan@sandbox ~ % sudo -Hu git gl-setup /tmp/local.pub
[sudo] password for ehsan:
The default settings in the rc file (/home/git/.gitolite.rc) are fine for most
people but if you wish to make any changes, you can do so now.
hit enter…
Select an editor. To change later, run ‘select-editor’.
1. /bin/nano <—- easiest
2. /usr/bin/vim.tiny
Choose 1-2 [1]:
سپس بعد از آنکه اسکریپت تنظیم نرمافزار «gitolite» اجرا شد؛ در قسمت انتخاب ویرایشگر، همان ویرایشگر پیشفرض که نانو است را انتخاب کرده و وارد نرمافزار ویرایشگر خواهید شد. سپس باید تغییرات زیر را در تنظیمات نمایش داده شده انجام دهید.
$WEB_INTERFACE = “gitweb”;
$GITWEB_URI_ESCAPE = 1;
$REPO_UMASK = 0027;
سپس با فشردن کلیدهای « CTRL + W» به دنبال عبارت «GITCONFIG_KEYS» گشته و با پیدا کردن خط مربوطه؛ آن خط را به مقادیر زیر تغییر دهید.
$GL_GITCONFIG_KEYS = “gitweb\.(owner|description|category)*”;
سپس با فشردن کلیدهای «CTRL + X» و نوشتن عبارت وای «Y»، فایل تنظیمات ذخیره شده و از ویرایشگر متن نانو خارج خواهید شد. بعد از آن کلید را از شاخه موقتی پاک کرده و دستورات زیر را اجرا کنید.
ehsan@sandbox ~ % git config –global user.name “Ehsan Tork”
در دستور بالا شما به جای نوشتن اسمی که در این جا نام من است؛ نام خود را وارد کنید؛ سپس با استفاده از دستور زیر رایانامه خود را نیز برای تنظیم گیت وارد کنید.
ehsan@sandbox ~ % git config –global user.email [email protected]
بعد از اعمال تنظیمات فوق، با استفاده از دستور «clone» در گیت، تنظیمات «gitolite» را دریافت کنید.
ehsan@sandbox ~ % git clone git@localhost:gitolite-admin.git
Cloning into ‘gitolite-admin’…
The authenticity of host ‘localhost (::1)’ can’t be established.
ECDSA key fingerprint is 7e:43:d4:6b:0b:5d:ce:5c:f2:a5:7f:e8:1e:8b:28:5e.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘localhost’ (ECDSA) to the list of known hosts.
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 6 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (6/6), done.
Checking connectivity… done.
سپس همانند خطوط بالا عبارت بله «yes» را تایپ کرده و کلید اینتر را از روی صفحه کلید فشار دهید. بعد از ذخیره تنظیمات مذکور توسط گیت به شاخه بارگیری شده بروید.
ehsan@sandbox ~ % cd gitolite-admin
بعد از اینکه وارد پوشه فوق شدید؛ باید کلیدهای شناسایی که در اساساچ وجود دارد را وارد پوشه کلیدهای «keydir» موجود در این پوشه کنیم.
ehsan@sandbox ~/gitolite-admin
% cat ~/.ssh/authorized_keys >> keydir/ehsan.pub
بعد از اینکه کلید شناسایی را نیز وارد پوشه فوق کردیم؛ کمی هم باید در تنظیمات تغییراتی را ایجاد کنیم. برای تغییر در تنظیمات، دستور زیر را اجرا کنید.
ehsan@sandbox ~/gitolite-admin
% nano conf/gitolite.conf
تنظیمات زیر را در پایان فایل فوق قرار داده و فایل فوق را ذخیره کنید.
repo dashboard
RW+ = ehsan
حال بیایید ببینیم چه تغییراتی در فایلهای فوق انجام شدهاست. برای مشاهده مقدار تغییرات انجام شده در فایلها و پوشههای فوق باید دستور زیر را اجرا کنید.
ehsan@sandbox ~/gitolite-admin
% git diff
diff –git a/conf/gitolite.conf b/conf/gitolite.conf
index 027dc91..d808ae4 100644
— a/conf/gitolite.conf
+++ b/conf/gitolite.conf
@@ -3,3 +3,5 @@ repo gitolite-admin
repo testing
RW+ = @all
+repo dashboard
+ RW+ = ehsan
همانطور که مشاهده میکنید؛ تغییراتی که در فایل تنظیمات انجام شده است در خروجی دستور بالا مشخص شدهاست اما فایلی که برای کلید و احراز هویت وارد کردیم؛ نمایش داده نشده است. برای نمایش این فایل دستور دیری نیز وجود دارد که وضعیت را نمایش می دهد.
ehsan@sandbox ~/gitolite-admin
% git status
On branch master
Your branch is up-to-date with ‘origin/master’.
Changes not staged for commit:
(use “git add <file>…” to update what will be committed)
(use “git checkout — <file>…” to discard changes in working directory)
modified: conf/gitolite.conf
Untracked files:
(use “git add <file>…” to include in what will be committed)
keydir/ehsan.pub
no changes added to commit (use “git add” and/or “git commit -a”)
اگر دستور بالا را اجرا کنید؛ فایل جدیدی که برای احراز هویت رونویسی کرده و در شاخه کلیدها قرار دادیم نیز قابل مشاهده است. سپس برای اعمال تغییرات فوق در گیت باید دستور زیر را اجرا کنید.
ehsan@sandbox ~/gitolite-admin
% git add -A
بعد از این با استفاده از دستور کامیت «commit» میتوانید تغییرات را مجددا توسط گیت ارسال کنید. در این حالت باید پیغامی را نیز برای مشخص کردن ارسال بنویسید که برای افزودن توضیحات به کار میرود.
ehsan@sandbox ~/gitolite-admin
% git commit -m “Added new user, Dashboard repository”
[master 99e8cc1] Added new user, Dashboard repository
2 files changed, 3 insertions(+)
create mode 100644 keydir/ehsan.pub
در آخر برای ارسال تمامی تغییرات توسط گیت، دستور زیر را نیز اجرا کنید.
ehsan@sandbox /usr/share/gitweb
% git push origin master
نصب و تنظیمات نرمافزار گیتوب «gitweb»؛
همانطور که در اوایل مطلب اشاره کردیم؛ نرمافزار گیتوب برای مشاهده تاریخچه و ارسالهایی است که توسط نرمافزار گیت انجام دادهاید. این نرمافزار، ابزاری مبتنی بر وب مشابه پیاچپی مایادمین است که باید از طریق مرورگر اجرا شود. برای نصب این ابزار باید از طریق راهنمای زیر عمل کنید؛ زیرا تنظیمات مورد نیاز برای اجرای آن به سادگی نرمافزارهای دیگر نیست. برخی مواقع هزینهای که برای استفاده از نرمافزارهای آزاد پرداخت میکنید؛ وقت شما است.
ehsan@sandbox ~ % sudo apt-get -y install gitweb highlight
بعد از آنکه ابزار فوق را توسط ایپیتی و از طریق مخازن رسمی اوبونتو نصب کردید؛ باید برخی تنظیمات خاص را بر روی فایل تنظیمات نرمافزار واقع در شاخه تنظیمات «etc/» اعمال کنید. با استفاده از دستور زیر فایل تنظیمات نرمافزار گیتوب «gitweb» را گشوده و تغییرات مورد نظر را در آن اعمال کنید.
ehsan@sandbox ~ % sudoedit /etc/gitweb.conf
آدرس مقابل «$projectroot» را در فایل مذکور به آدرس نرمافزار «gitolite» تغییر دهید. (به شکل زیر)
$projectroot = “/home/git/repositories”;
واژه «#» را هم که قبل از عبارت «#$projects_list» قرار دارد را نیز برداشته و عبارت جلو آن را نیز به عبارت دلخواه و مشابه زیر تغییر دهید.
$projects_list = “/home/git/projects.list”;
سپس با استفاده از کلیدهای میانبر «CTRL + V» به صفحه بعد و انتهای فایل رفته و مقادیر نوشته شده زیر را در انتهای فایل مذکور درج کنید.
# enable highlighting
$feature{‘highlight’}{‘default’} = [1];
بعد از این با فشردن کلیدهای میانبر «CTRL + X» و نوشتن واژه وای «Y» بعد از آن، تغییرات را در فایل گشوده شده ذخیره کرده و از نرمافزار ویرایشگر متن نانو خارج شوید. حال بعد از این باید تنظیماتی را نیز در کارساز وب آپاچی اعمال کنیم. برای این منظور باید فایل تنظیمات جدیدی را در تنظیمات کارساز وب آپاچی ایجاد کنیم. دستور زیر را برای ایجاد فایل فوق در خط فرمان وارد کنید.
ehsan@sandbox ~ % sudoedit /etc/apache2/conf-available/gitweb.conf
مقادیر زیر را در داخل فایل فوق، رونویسی و درج رده و سپس فایل را با استفاده از کلیدهای میانبر «CTRL + X» و نوشتن واژه وای «Y» ذخیره کنید.
Alias /gitweb /usr/share/gitweb
<Directory /usr/share/gitweb>
Options +FollowSymLinks +ExecCGI
AddHandler cgi-script .cgi
</Directory>
سپس بعد از آنکه تنظیمات فوق را در فایل فوق نوشته و ذخیره کردید؛ باید به کاربر «www-data» نیز این اجازه را بدهید که به محتویات پوشه کاربر گیت «home/git/» دسترسی داشته باشد. برای تخصیص این دسترسی به کاربر فوق، دستور زیر را هم در خط فرمان اجرا کنید.
ehsan@sandbox ~ % sudo usermod -aG git www-data
همچنین باید با استفاده از دستور زیر فایل «/home/git/projects.list» را قابل خواندن کنیم.
ehsan@sandbox ~ % sudo chmod g+r /home/git/projects.list
بعد از اجرای دستورات بالا به شکل موفق، باید با استفاده از دستوراتی که در قسمت دوم این آموزش نیز از آن استفاده کردهایم، تنظیمات را بر روی آپاچی فعال کنیم.
ehsan@sandbox ~ % sudo a2enconf gitweb
Enabling conf gitweb.
To activate the new configuration, you need to run:
service apache2 reload
بعد از این باید ماژول سیجیآی «cgi» را نیز برای استفاده در آپاچی فعال نمایید. برای فعال کردن ماژول فوق از دستور زیر در خط فرمان استفاده کنید.
ehsan@sandbox ~ % sudo a2enmod cgi
Enabling module cgi.
To activate the new configuration, you need to run:
service apache2 restart
در نهایت با استفاده از دستور زیر یکبار دیگر آپاچی را راهاندازی مجدد کنید تا تنظیمات اعمال شده از نو و مجددا در آپاچی بارگزاری شوند.
ehsan@sandbox ~ % sudo service apache2 restart
* Restarting web server apache2
به شاخه «gitolite-admin» که توسط گیت بارگیری کردیم رفته و از طریق تنظیمات نرمافزار فوق که در مراحل بالا آن را قبلا تغییر دادهبودیم را باز کنید.
ehsan@sandbox ~ % cd ~/gitolite-admin
ehsan@sandbox ~/gitolite-admin
% nano conf/gitolite.conf
بعد از گشوده شدن فایل توسط نرمافزار ویرایشگر متن نانو، مقادیر جدید زیر را جایگزین مقادیر قبلی کنید.
repo gitolite-admin
RW+ = local
ًR = gitweb
config gitweb.description = “gitolite administration”
repo testing
RW+ = @all
repo dashboard
RW+ = ehsan
ًR = gitweb
config gitweb.description = “Sandbox dashboard”
سپس با استفاده از کلیدهای میانبر «CTRL + X» و نوشتن واژه وای «Y» فایل را ذخیره و از ویرایشگر خارج شوید. سپس با استفاده از گیت، تغییرات اعمال شده را بههنگام کنید. برای این منظور دستور زیر را در خط فرمان وارد کنید.
ehsan@sandbox ~/gitolite-admin
% git commit -a -m “Adding gitweb permissions”
[master 4d9e4bf] Adding gitweb permissions
1 file changed, 4 insertions(+)
حال تمامی تغییرات یافته توسط ویرایشگر متنی و بههنگام شده را به وسیله ابزار و نرمافزار گیت و پوشه «~/gitolite-admin» به تنظیمات «gitolite-admin» انتقال دهید.
ehsan@sandbox ~/gitolite-admin
% git push
سپس اگر وارد آدرس «http://sandbox.dev:8080/gitweb/» شوید با صفحه اصلی نرمافزار مبتنی بر وب گیتوب «gitweb» مواجه خواهید شد. اگر صفحه زیر با تمامی متون و مخازن افزوده شده برای شما نمایش داده شود؛ به این معنی است که گیتوب به خوبی تنظیم شدهاست. همچنین با افزودن آدرس «gitweb/» به جدول پیشخوان ساخته شده در بانک اطلاعاتی میتوانید یک پیوند میانبر را نیز برای این صفحه بسازید.
اما همانطور که میبینید؛ ابزار فوق از ظاهر مناسبی برخوردار نیست. برای آنکه ظاهر نرمافزار فوق بهبود یابد میتوان از سبکهای آمادهای که برای این منظور توسط کاربران در سطح وب نوشته شده است استفاده کنید. برای اینکار مجددا به ترمینال مراجعه کنید. سپس به پوشهای که در آن سبک های گیتوب قابل مشاهده است وارد خواهیم شد؛ ولی قبل از آن یک نسخه پشتیبان از سبک فعلی تهیه میکنیم.
ehsan@sandbox ~/gitolite-admin
% cd /usr/share/gitweb/
ehsan@sandbox /usr/share/gitweb
% sudo mv static original
سپس از طریق گیت، قالب مورد نظر را بارگیری میکنیم. این قالب در داخل گیتهاب قرار دارد؛ بنابر این آن را دریافت و خروجی را با استفاده از «|»به پوشه «static» لولهکشی میکنیم.
ehsan@sandbox /usr/share/gitweb
% sudo git clone git://github.com/kogakure/gitweb-theme.git static
Cloning into ‘static’…
remote: Counting objects: 296, done.
remote: Total 296 (delta 0), reused 0 (delta 0), pack-reused 296
Receiving objects: 100% (296/296), 702.69 KiB | 244.00 KiB/s, done.
Resolving deltas: 100% (102/102), done.
Checking connectivity… done.
حال اگر به همین آدرس «http://sandbox.dev:8080/gitweb/» مراجعه کنید با نمایی زیباتر از نرمافزار گیتوب مواجه خواهید شد. اگر از این قالب خوشتان نیامده است؛ میتوانید قالب قبلی را از طریق تغییر نام پوشه «original» به «static» مجدد فعال کنید. نمای جدید در مرورگر فایرفاکس، در زیر قابل مشاهده است.
اگر تغییر احساس نکردید؛ صفحه را با کلیدهای «CTRL + F8»، مجددا تازه سازی کنید. بعد از مشاهده صفحه فوق به شکل مناسب و زیبا، تقریبا آموزش نصب و تنظیم گیتوب به پایان رسیدهاست؛ با این حال آموزش نصب و تنظیم و چگونگی استفاده از نرمافزار «etckeeper» را نیز در قسمت بعدی بررسی خواهیم کرد. این ابزار جهت بههنگامسازی و همگامسازی تنظیمات سیستم توسط گیت به کار میرود.
استفاده از گیت و آموزش نحوه استفاده از آن برای دسترسی به سندباکس از حوصله این مطلب خارج است و نمیتوان تمامی مواردی را که در گیت وجود دارد را در یک مطلب کوتاه بررسی کرد. با این حال بنا به سیستمعامل مورد استفاده خود میتوانید با استفاده از گیت به کنترل نسخه و مدیریت پروژههای خود بپردازید. اگر مخزن جدیدی را نیز مدنظر دارید؛ آن مخزنها را نیز همانند مخزن پیشخوان «Dashboard» در تنظیمات «gitolite-admin» درج کنید. برای دسترسی به مخزن خاص مثلا پیشخوان از آدرسی مانند آدرس زیر استفاده میشود.
ssh://[email protected]/2222/dashboard.git
همچنین برای دسترسی به گیت در سیستمعامل مک و ویندوز میتوانید از نرمافزار «SourceTree» استفاده کنید که یک واسط گرافیکی برای نرمافزار گیت به حساب میآید.
منبع: salam-donya
گیگ بوی سایت آموزش شبکه به صورت فارسی و تصویری و دانلود نرم افزار