Гит (1. део): Основе

Аутори: Златан Васовић, Горан Мекић

Git је distributed revision control и source code management (SCM) систем са нагласком на брзини. Осмислио га је и развио Линус Торвалдс првенствено за развој и одржавање Linux kernel-а. Данас се користи за све типове слободног софтвера. Објављен је као слободан софтвер под условима GNU General Public License v2 (GPL v2).

Неки од програмера Git-а су Линус Торвалдс и Junio Hamano. Све који су допринели развоју Git-а можемо пронаћи на https://github.com/git/git/graphs/contributors. Сам Git је написан у C-у, док су неки од додатних делова написани у Bourne Shell, Perl, JavaScript, Tcl и Python програмским језицима.

Git је енглески сленг за глупу или непријатну особу. Торвалдс је рекао: „Ја сам самољубив гад и ја називам своје пројекте по себи. Прво Linux, сада Git“. На Manual страницама Git-а пише да је Git глупи трагач садржаја. Чак и у README-у званичног Git складишта – https://github.com/git/git пише „GIT – the stupid content tracker“.

Развој Git-а је почео када је много програмера Linux kernel-а одустало од BitKeeper-а, затвореног, власничког SCM-а који је раније коришћен за одржавање пројекта.

Развој Git-а је почео 3. априла 2005. године а пројекат је званично најављен 6. априла. Hosting пројекта је постао самосталан 7. априла. Први велики успех је био спајање више развојних грана које је успешно урађено 18. априла. Торвалдс је остварио своје циљеве – 29. априла је тестирано чување закрпа за Linux kernel tree у Git-у. Резултат је била стопа од 6,7 по секунди. Прва верзија kernel-а која је одржавана на Git-у је v2.6.12. Њено одржавање је почело 16. јуна.

Друштвени развој

Зашто не направити друштвену мрежу (на неки начин) за Git? – питали су се оснивачи GitHub-а. Управо због друштвеног развоја је настао GitHub а за њим и BitBucket (он има и Mercurial али ћемо споменути само Git део). Основна идеја за друштвени развој је комуникација између програмера и корисника (у свим правцима).

GitHub

Настанак и идеја GitHub-а је објашњења у пасусу горе. На GitHub страницама је постављена званична web страница Git-а, http://git-scm.com.

Како направити GitHub налог? Прво идемо на https://github.com. Затим налазимо поље за регистрацију као на слици 1.
Корисничко име који одаберемо може садржати само слова енглеског алфабета и бројеве. Наша (српска) слова нису дозвољена.
* Електронска пошта (e-mail) нам треба ради верификације.
* Лозинка мора имати најмање 7 карактера и садржати бар један број.
Након тога бирамо Sign up for free. Након тога можемо одабрати и неки „пакет“ који се плаћа али зашто бисмо? Пакети који се плаћају се углавном користе за приватнa складишта.

При врху странице, поред линка до нашег профила се налази дугме уз помоћ којег правимо ново складиште. Можемо направити складиште одласком на https://github.com/new. Сада подешавамо складиште.
* Поље Owner (власник) остављамо исто (касније ћемо говорити о тимовима). Претпоставићемо да је власник налога „корисник“
* Поље Repository name (име складишта) „попуњавамо“ кратким и занимљивим називом (на пример „моје складиште“)
* Поље Description (опис) можемо оставити празним, ипак, ако желимо, можемо га попунити
* Увек бирамо Public repo
* „Initialize this repository with a README“ чекирати
* Add .gitignore – најбоље је да оставимо None
Готово! Наше прво складиште је направљено!

Како функционишу линкови на GitHub-у? Сваки корисник има свој директоријум. Дакле, https://github.com/korisnik ће нас одвести до профила одређеног корисника. Свако складиште је као поддиректоријум. На пример https://github.com/korisnik/repo.

Git можемо пробати на адреси http://try.github.com.

Уколико имамо предлог/примедбу за GitHub, можемо контактирати запослене на https://github.com/c. Одговор ће стићи на нашу електронску пошту.

Shell приступ

SSH

Уколико не желимо да приступамо преко HTTPS протокола, ту је SSH који је доказано сигурнији. За SSH приступ Git-у нам је потребан SSH кључ. Овај туторијал ће нам помоћи око прављења SSH кључева → https://help.github.com/articles/generating-ssh-keys.

Пример коришћења
  git clone ssh://git@github.com/korisnik/mojrepo.git
cd mojrepo
git log
  echo 'Sadržaj datoteke' >novi.txt 
git add novi.txt
git commit -m 'Test commit'
git push
  git pull

Наставак

Оставите одговор

Ваша адреса е-поште неће бити објављена. Неопходна поља су означена *

Time limit is exhausted. Please reload CAPTCHA.