git - Distributed Revision Control

Би CVS ашиглаж байлаа, SVN ашиглаж байлаа. git -ийг зохиосон Линус хэлэхдээ, хэрэв та CVS -ийг хэрэглээд сэтгэл хангалуун байдаг бол толгойдоо “юмтай”, харин SVN бол түүхэн дэх хамгийн утгагүй төсөл байсан гэжээ. Бодвол CVS-ээс ялгаагүй гэж байгаа бололтой. git -ийн давуу тал нь төвлөрсөн бус жинхэнэ тархсан систем юм. Хүн болгон өөрийн хувилбар дээр ажиллах бөгөөд commit хийхэд хэнээс ч асуух шаардлагагүй, дараа нь кодоо хаа нэгтээ push хийчихнэ, эсвэл хэн нэг нь чамаас pull хийгээд авчихна, энд ямар нэг permission энэ тэр хэрэггүй, ардчилсан шинжтэй. Төвлөрсөн сэрвэр гэж байхгүй. Жишээ нь өөрийн компьютер дээр ажилаж байхад офлайн ажиллаад commit хийгээд байж болно гэсэн үг. Олон үг ярьхаар хэдэн жишээ үзье дээ.

Нэг директор байгаад тэр дотор байгаа файлуудыг git рүү оруулья.

cd pjdir
git init

Файлыг git удирдлага дор оруулья.

git add myfile.c
# эсвэл директорыг тэр чигээр нь...
git add mydir

Файлыг commit хийж хадгалья

git commit -m "firt import" myfile.c

Файлуудын төлөвийг харах

git status

За энэ хүртэл бол ерөнхийдөө SVN эдэртэй төстэй байгааг өмнө нь ямар нэг revision control систем дээр ажиллаж байсан бол ажигласан байх. Гэхдээ энд хийгээд байгаа коммит эд нар бүгд зөвхөн чиний компьютер дээр болж өрнөөд байгаа гэдгийг санаарай. Одоо жинхэнэ ид шидийг үзье гэвэл тархсан байдлаар яаж ажиллахыг хар даа.

Найз Доржийн кодыг холбоё.

git remote add dorj ssh://computer_of_dorj/path/to/app.git

Одоо Доржийн master мөчрийн кодыг өөрийнх рүүгээ нийлүүллээ.

git pull dorj master

Тэгээд баахан код бичлээ, тэрийгээ commit хийчлээ. Гэхдээ өөрчлөлтүүд маань миний л компьютер дээр байгаа. Сүүлийн хувилбараа рилийзэд бэлдэж мөчир үүсгээд хадгалчихья.

git branch beta_branch HEAD^

Рилийз хийх хүнд миний код бэлэн болчлоо гэдгийг мэдэгдлээ. Рилийз хийгч миний кодыг өөрийн компьютер дээрээс ингэж авах нь.

git remote add ochiro ssh://computer_of_ochiro/path/to/pjdir/pjdir.git
git pull ochiro beta_branch

Өөр компьютер дээр байгаа git рүү ssh протоколоор хандах хамгийн нууцлал сайтай. Дээрхи жишээнүүдэд дандаа ssh гэсэн байгаа. Бас git://server/path/projectname.git гэж хандаж болно. Гэхдээ энд ч гэсэн цаанаа бол git: гэдэг нь ssh: юм л даа. Энэ бичлэгээ git-ийн танилцуулга төдийгөөр өндөрлөөд цааш лавлаж харах бол хэрэгтэй хэдэн линк үлдээлээ. Нэмж хэлэхэд git-ийн хувьд би үнэхээр сэтгэл хангалуун байгаа шүү, туршаад үзээрэй. Happy Coding!