Увод у Гит: шта је то и како га користити

Гит је систем за дистрибуцију дистрибуираних верзија отвореног кода . То је пуно речи за дефинисање Гита.

Дозволите ми да га разбијем и објасним формулацију:

  • Контролни систем: То у основи значи да је Гит трагач за садржајем. Дакле, Гит се може користити за чување садржаја - углавном се користи за чување кода због других карактеристика које пружа.
  • Систем за контролу верзија : Код који се чува у Гит-у се мења како се додаје више кода. Такође, многи програмери могу паралелно да додају код. Дакле, систем за контролу верзија помаже у решавању овога одржавањем историје промена које су се догодиле. Такође, Гит пружа функције попут гранања и спајања, о чему ћу говорити касније.
  • Дистрибуирани систем контроле верзија : Гит има удаљено спремиште које се чува на серверу и локално спремиште које се чува на рачунару сваког програмера. То значи да се код не чува само на централном серверу, већ је пуна копија кода присутна на свим рачунарима програмера. Гит је дистрибуирани систем за контролу верзија, јер је код присутан на рачунару сваког програмера. Концепт удаљених и локалних спремишта објаснићу касније у овом чланку.

Зашто је потребан систем за контролу верзија као што је Гит

Пројекти из стварног живота углавном имају више програмера који раде паралелно. Дакле, потребан је систем за контролу верзија као што је Гит како би се осигурало да не постоји сукоб кодова између програмера.

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

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

Почнимо са коришћењем Гита сада

Уместо да помињем све концепте одједном, објаснићу концепте Гит-а кроз пример тако да је лакше следити.

Преузми гит

Ова веза садржи детаље о томе како инсталирати Гит у више оперативних система:

//гит-сцм.цом/боок/ен/в2/Геттинг-Стартед-Инсталлинг-Гит

Проверите да ли је Гит инсталиран помоћу следеће наредбе у командној линији:

git --version

Креирајте своје локално Гит спремиште

На рачунару креирајте фасциклу за свој пројекат. Назовимо фасциклу пројекта simple-git-demo.

Идите у директоријум вашег пројекта и додајте локално Гит спремиште у пројекат помоћу следећих команди:

cd simple-git-demo git init

git initКоманда додаје локални Гит репозиторијум пројекту.

Додајмо сада мали код

Направите датотеку која се зове demo.txtу фасцикли пројекта и додајте јој следећи текст:

Initial Content

Овде ћемо демонстрирати само обичан текст уместо стварног кода, јер је главни фокус овог чланка Гит, а не било који одређени програмски језик.

Постављање и предавање кода

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

Ниједна датотека која није додата у сценско подручје неће бити урезана. То програмеру даје контролу над датотекама које треба извршити.

Инсценација

За постављање датотеке користите следећу наредбу:

git add demo.txt

У случају да желите да додате више датотека, можете да користите:

git add file1 file2 file3

Ако желите да додате све датотеке унутар директоријума вашег пројекта на место за инсценацију, користите следећу наредбу:

git add .

Користите ово пажљиво, јер додаје све датотеке и фасцикле у вашем пројекту у сценско подручје.

Предавање

Користите следећу наредбу за урезивање датотеке:

git commit -m "Initial Commit"

„Почетно урезивање“ је овде порука урезивања. Унесите релевантну поруку урезивања да назначите које су промене кода извршене у тој одређеној урези.

Гит Статус и Гит Лог

Сада модификујте demo.txtдатотеку и додајте следећи исечак:

Initial Content Adding more Content

Статус

Користите git statusда бисте сазнали информације о томе које су датотеке измењене и које се датотеке налазе у области за инсценацију - оне показују и друге информације, које за сада можемо занемарити.

Користите следећу команду да бисте видели статус:

git status

Статус показује да demo.txtје измењен и још увек није у зони инсценације.

Хајде сада да додамо demo.txtна место за инсценацију и извршимо га помоћу следећих команди:

git add demo.txt git commit -m "demo.txt file is modified"

Пријава

Користите git logза испис свих уреза која су урађена до сада.

Команда која се користи за ово је:

git log

Дневник приказује аутора сваког урезивања, датум урезивања и поруку урезивања.

Подружнице

До сада нисмо створили ниједну грану у Гит-у. Подразумевано, Гит урези иду у главну грану.

Шта је грана?

Подружница није ништа друго до показивач на најновији урези у Гит спремишту. Дакле, тренутно је наша главна грана показивач на другу урезивање “demo.txt file is modified”.

Зашто је потребно више грана?

За подршку вишеструким паралелним развојима потребно је више грана. Погледајте доњу слику да бисте видели како функционишу гране.

У почетку су урезивање 1 и урезивање 2 извршени у главној грани. Након урезивања 2 креира се нова грана која се назива „Тест“, а провера 3 и урезивање 4 додају се у тест грану.

Истовремено, различити урези 3 и урезивање 4 додају се у главну грану. Овде можемо видети да се након урезивања 2 раде два паралелна развоја у две одвојене гране.

Тест Бранцх и Мастер Бранцх су се овде разишли и имају другачији код - код из Тест Бранцх-а се може спојити са Мастер граном користећи git merge. Ово ће бити касније обрађено.

Направите нову пословницу у локалу

Направите нову грану која се зове тест помоћу следеће наредбе:

git branch test

Ова наредба креира testграну.

Још увек смо у контексту главне гране. Да би се прешло на test пословницу. користите следећу команду:

git checkout test

Сад смо у testфилијали.

Можете да наведете све филијале у локалу помоћу следеће наредбе:

git branch

Учини неке обавезе у новом огранку

Измените demo.txtдодавањем следећег исечка:

Initial Content Adding more Content Adding some Content from test Branch

Сада изведите етапу и извршите следеће наредбе:

git add demo.txt git commit -m "Test Branch Commit"

Ово урезивање је урађено у Тест Бранцх-у, а сада је Тест Бранцх испред Мастер Бранцх-а за 1 урезивање - јер тест огранак такође укључује 2 урезивања из Мастер Бранцх-а.

Историју урезивања можете проверити у Тест Бранцху користећи:

git log

Спајање

Тренутно је Тест Бранцх испред Мастер-а за 1 предају. Рецимо да сада желимо да се сав код у Тест Бранцх-у врати у Мастер Бранцх. Овде је git mergeврло корисно.

Да бисте стопили код из тест гране у главну грану, следите ове кораке:

Прво се вратите у главну грану:

git checkout master

Затим покрените mergeнаредбу:

git merge test

Након покретања ове 2 наредбе, спајање би требало бити успешно. У овом примеру нема сукоба.

Али у стварним пројектима биће сукоба када се врши спајање. Решавање конфликта је нешто што долази са искуством, па ако будете више радили са Гит-ом, моћи ћете да покушате да решите сукобе.

Трцати git logсада и приметићете да мастер такође има 3 обавезе.

Удаљено Гит складиште

До сада смо радили само у локалном спремишту. Сваки програмер ће радити у свом локалном спремишту, али на крају ће гурнути код у удаљено спремиште. Једном када се код нађе у удаљеном спремишту, други програмери могу да га виде и измене.

ГитХуб

Овде ћемо користити ГитХуб за удаљено спремиште.

Идите на //гитхуб.цом/ и отворите налог.

Након регистрације на ГитХуб почетној страници, кликните на Старт а Пројецт да бисте креирали ново Гит спремиште. Дајте спремишту име и кликните на „Направи спремиште“

Дајте име као git-blog-demo.

Ово ће створити удаљено спремиште у ГитХуб-у, а када отворите спремиште, отвориће се страница попут слике испод:

УРЛ спремишта је истакнути део //github.com/aditya-sridhar/git-blog-demo.git

Да бисте усмерили локално спремиште на удаљено спремиште, користите следећу наредбу:

git remote add origin [repository url]

Гит Пусх

Да бисте гурнули сав код из локалног спремишта у удаљено спремиште, користите следећу наредбу:

git push -u origin master

Ово гура код из главне гране у локалном спремишту у главну грану у удаљеном спремишту.

Додатне команде

Гит Пулл

git pullкористи се за повлачење најновијих промена из удаљеног спремишта у локално спремиште. Код удаљеног спремишта континуирано ажурирају разни програмери, стога git pull је неопходно:

git pull origin master

Гит Цлоне

git cloneсе користи за клонирање постојећег удаљеног спремишта у ваш рачунар. Команда за ово је:

git clone [repository url]

Честитамо

Сада знате основе како се користи Гит, па само напред и истражите више!

Ускоро ћу објавити још један чланак о мало напреднијим концептима Гита. Будите у току!

О аутору

Волим технологију и пратим технолошки напредак. Такође волим да помажем другима било којим знањем које имам у технолошком простору.

Слободно се повежите са мном на свом ЛинкдИн налогу //ввв.линкедин.цом/ин/адитиа1811/

Можете ме пратити и на твиттеру //твиттер.цом/адитиасридхар18

Моја веб локација: //адитиасридхар.цом/

Остале поруке од мене

Како ефикасно користити Гит