субота, 20 априла, 2024
Сам свој мајстор

Гит (3. део): Терминологија

Аутор: Златан Васовић

Често су термини који се користе у Git-у непознати. У прошлом броју смо написали мали Git речник али он није довољан ако желимо да се озбиљније бавимо програмским развојем уз Git SCM.

Git изрази

Кренимо редом.

Commit представља скуп свих измена у складишту програмских пакета у одређено време које је корисник груписао. Сваку датотеку за коју желимо да се нађе у следећем commit-у морамо додати командом git add. Ако смо изменили две датотеке – на пример test.txt и text.txt, не морамо их обе додати у следећи commit. Дакле, commit је само ствар наше воље. Све датотеке које су у тренутном commit-у су спремне за објављивање командом git push.

Gitignore је израз за датотеку у којој уписивањем одређеног текста можемо игнорисати нежељене датотеке или фасцикле. Обично су то backup датотеке (*~) или специфичне датотеке за неки едитор које су непотребне. Примере .gitignore датотека можемо наћи у github/gitignore складишту програмских пакета (https://github.com/github/gitignore).

Merge представља пребацивање одређених commit-а између две развојне гране. Те две развојне гране могу бити и у истом и у различитим складиштима програмских пакета.

Pull request је, најједноставније речено, захтев за merge.

Програмерски термини

Програмерски термини су наравно у складу са Git-ом.

Fork представља копију неког програма који садржи измене. Дакле, ако само копирамо неко складиште програмских пакета а не изменимо ништа, онда то није прави fork.

Alpha је назив за рану верзију програма која је углавном врло нестабилна.

Beta је назив за пробну верзију програма. Такође може бити нестабилна.

RC (Release Candidate) је издање програма који је кандидат за нову верзију програма. Може бити и стабилан и нестабилан.

WIP (Work In Progress) је развојна верзија која углавном има одређен рок за завршавање. Само име каже да је израда (заправо развој) у току… WIP принцип развоја је врло једноставан – само постоји WIP који је развојна верзија након које следи нова верзија.

Називи

Постоји неколико назива који се често примењују у Git складиштима програмских пакета. Пишу се малим словима, осим на почетку реченице. Не морамо их користити ако не желимо.

Master је подразумевани назив главне развојне гране. Представља стабилну и званичну развојну грану. Не морамо га стављати као назив развојне гране у командама, управо јер је подразумеван. Ми можемо подесити неку другу развојну грану као подразумевану уместо master-а.

Development је класичан назив за праву развојну грану која је често нестабилна. Углавном када постане стабилна, онда се сав развој на њој преноси и на подразумевану грану pull request-ом.

Назив подразумеваног remote-а је origin. Он представља подразумевану „вредност“ која је присутна када копирате складиште програмских пакета на локални диск. Подразумевани remote можемо променити али origin ће увек остати подразумеван када поново копирамо складиште програмских пакета.

Upstream представља remote који се користи за merge између повезаних складишта програмских пакета. Да бисмо ово лакше разумели узећемо за пример једно обично складиште програмских пакета и његов fork. Рецимо да желимо да fork ажурирамо уз „обично складиште програмских пакета“, тј. пренесемо све измене које не постоје у fork-у. Направићемо remote под називом upstream који ће имати адресу „обичног складишта програмских пакета“ и урадити pull.

Претходни део | Наставак