Git
Chapters ▾ 2nd Edition

A3.5 Додатак C: Гит команде - Дељење и ажурирање пројеката

Дељење и ажурирање пројеката

Нема много команди у програму Гит које приступају мрежи, скоро све команде оперишу над локалном базом података. Када сте спремни да поделите свој рад или да повучете измене са неког другог места, постоји неколико команди које раде са удаљеним репозиторијумима.

git fetch

Команда git fetch комуницира са удаљеним репозиторијумом, преузима све информације из тог репозиторијума које се не налазе у вашем тренутном, па их смешта у локалну базу података.

Са овом командом се први пут сусрећемо у Добављање и повлачење из удаљених репозиторијума, па настављамо са приказом примера њене употребе у Удаљене гране.

Такође је користимо у неколико примера у Како се даје допринос пројекту.

Користимо је да преузмемо једну одређену референцу која се налази ван подразумеваног простора у Референце на захтев за повлачење, а у Паковање видимо како да преузмемо из запакованог репозиторијума.

Подешавамо детаљно прилагођене рефспекове да git fetch уради нешто мало другачије од онога што подразумевано ради у Рефспек.

git pull

Команда git pull је у суштини комбинација команди git fetch и git merge, којом програм Гит преузме са удаљеног репозиторијума који наведете и онда непосредно након тога покуша да изврши спајање у грану на којој се тренутно налазите.

Укратко смо је представили у Добављање и повлачење из удаљених репозиторијума и показали како да видите шта ће спојити ако је покренете у Истраживање удаљеног репозиторијума.

Такође показујемо како да је употребите као помоћ при тешкоћама ребазирања уРебазирање када ребазирате.

У Одјављивање удаљених грана показујемо како да је користите са URL адресом да једнократно повучете измене.

Коначно, у Потписивање комитова укратко помињемо да можете употребити опцију --verify-signatures ове команде да проверите да ли су комитови које повлачите GPG потписани.

git push

Команда git push се користи за комуникацију са другим репозиторијумом, израчунавање шта ваш репозиторијум има што удаљени нема, па затим гура разлику у други репозиторијум. Она захтева да имате право уписа у удаљени репозиторијум, па је логично да се аутентификује на неки начин.

Команду git push прво представљамо у Гурање ка удаљеним репозиторијумима. Ту обрађујемо основе гурања гране на удаљени репозиторијум. У Гурање идемо мало детаљније у гурање одређених грана, а у Гране за праћење показујемо како да поставите гране за праћење на које се аутоматски гура. У Брисање удаљених грана користимо заставицу --delete да обришемо грану на серверу са git push.

Кроз Како се даје допринос пројекту дајемо неколико примера употребе git push за дељење рада на гранама кроз више удаљених репозиторијума.

Начин употребе ове команде за дељење ознака које сте направили опцијом --tags показујемо у Дељење ознака.

У Објављивање измена подмодула користимо опцију --recurse-submodules да проверимо да ли је сав рад из наших подмодула објављен пре него што гурамо на суперпројекат, што је заиста корисно када се користе подмодули.

У Остале куке на клијентској страни укратко причамо о pre-push куки, која представља скрипту коју постављамо да се изврши пре него што се заврши гурање и која проверава да ли је дозвољено да се обави гурање.

Коначно, у Гурање рефспекова причамо о гурању са потпуним рефспеком уместо уопштених пречица које се обично користе. Ово вам помаже да будете потпуно одређени у вези рада који желите да поделите.

git remote

Команда git remote је алат за управљање вашом колекцијом удаљених репозиторијума. Омогућава вам да дугачке URL адресе сачувате као кратке ручке, као што је „origin” тако да не морате стално да их уносите. Можете да их имате неколико и команда git remote се користи да их за додате, измените и обришете.

Ова команда је детаљно представљена у Рад са удаљеним репозиторијумима, укључујући приказ, додавање, уклањање и измену имена.

Такође се користи се и у скоро сваком наредном поглављу књиге, али увек у стандардном git remote add <име> <url> формату.

git archive

Команда git archive се користи за креирање фајла архиве одређеног снимка пројекта.

У Припрема за издање команду git archive користимо да направимо tarball архиву пројекта коју можемо да делимо.

git submodule

Команда git submodule се користи за управљање спољним репозиторијумима унутар обичних репозиторијума. Ово би могло да послужи за библиотеке или остале врсте дељених ресурса. Команда submodule има неколико подкоманди (add, update, sync, итд.) којима се управља овим ресурсима.

Ова команда се помиње само у Подмодули и ту је детаљно обрађена.