Тхе Ессентиал Гит Хандбоок

Увод

Здраво! Ја сам Сањула и надам се да ћу вас у овом водичу научити мало о Гиту, укључујући:

  • Шта је Гит
  • Зашто учити Гит
  • Постављање променљивих конфигурације
  • Увод у наредбу за помоћ у Гит-у
  • Како претворити постојећи пројекат у локално Гит спремиште
  • Ствари које треба обавити пре првог урезивања
  • Како додати датотеке у сценско подручје
  • Како уклонити датотеке из области за инсценацију
  • Прављење прве обавезе
  • Како да клонирате удаљено спремиште
  • Погледајте информације о удаљеном спремишту
  • Како гурнути промене у удаљено спремиште
  • Како створити грану за одређену особину или проблем
  • Гурајте грану до удаљеног спремишта након урезивања
  • Како спојити грану
  • Како избрисати грану

Хајде да почнемо!

Шта је Гит?

Једноставно речено, Гит је дистрибуирани систем контроле верзија отвореног кода .

Системи за контролу верзија помажу било ком софтверском тиму да временом управља променама изворног кода производа или услуге. Прати све модификације изворног кода у бази података. Ако је направљена критична грешка у изворном коду, тада програмери софтверског тима могу премотати изворни код на верзију пре него што је извршена погрешна промена. Као резултат, системи за контролу верзија штите изворни код од катастрофа, људских грешака и нежељених последица (на пример, када исправка грешке поквари други део апликације).

Па зашто учити Гит?

Гит је данас најраспрострањенији систем за контролу верзија на свету. То је зрео и активно одржаван пројекат отвореног кода који је првобитно развио Линус Торвалдс.

Невероватна количина софтверских пројеката ослања се на Гит за контролу верзија, укључујући комерцијалне и пројекте отвореног кода, посебно користећи услугу хостинга гит спремишта, ГитХуб, која је сада у власништву Мицрософта. Отуда је значај учења Гит-а.

Предуслов за овај водич

Преузмите и инсталирајте гит овде

Проверите верзију гит-а

git --version

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

Постављање вредности конфигурације

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

git config --global user.name “Sanjula Madurapperuma”
git config --global user.email “[email protected]
git config --list

Хелп Цомманд

Као што сте приметили, цонфиг је глагол који се до сада често користио у овом приручнику, а глаголи се такође могу користити као префикс или суфикс уз помоћ наредбе. Исти пример (глагол цонфиг ) можемо користити одозго да објаснимо ове наредбе.

git help config
git config --help

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

Како иницијализовати спремиште из постојећег кода

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

git init

Готово! Баш као да сте свој пројекат претворили у локално гит спремиште. Ако отворите директоријум пројекта, видећете да је створен нови директоријум под називом .гит.

Шта урадити пре првог урезивања

Унесите следећу наредбу за преглед датотека без праћења:

git status

Ако постоје датотеке које не желите да други људи виде у спремишту, попут датотека које садрже личне поставке или оне ИДЕ-а, учините следеће:

touch .gitignore

Да бисте одредили које датотеке се не додају у гит спремиште, отворите уређивач текста и погледајте датотеку .гитигноре, која се може уређивати као уобичајена текстуална датотека. Сада у датотеку можемо унети следеће, на пример:

.project
*.java

Такође се могу користити џокер знакови. У овом случају, кориштено је за одређивање да се у спремиште не додају све датотеке које се завршавају екстензијом .јава.

Сада поново покрените гит статус

Сада можете да видите да се датотеке које смо изузели у датотеци .гитигноре више не приказују на листи датотека без праћења. Датотека .гитигноре треба бити предата спремишту како би се одржала иста изузећа на свим другим местима.

Додавање датотека у сценско подручје

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

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

git add -A

Ако желите да додате датотеке појединачно, онда можемо дати име датотеке након гит адд. На пример,

git add .gitignore

Сада ако укуцате гит статус, видећете да се датотека .гитигноре сада налази у области за инсценацију.

Уклањање датотека из области за инсценацију

Да бисте појединачно уклонили датотеке из уметничког подручја, откуцајте следеће (на пример):

git reset simple.py

Ово ће уклонити датотеку симпле.пи из области за инсценацију. Да бисте видели ову промену, поново откуцајте гит статус.

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

git reset

Ако укуцамо гит статус, видећемо да су све датотеке промењене у датотеке без праћења.

Прављење првог урезивања

Сада покрените следеће да бисте додали све датотеке у сценско подручје које ће бити урезано.

git add -A

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

Да бисте се обавезали, откуцајте следеће.

git commit -m “Initial Commit”

„-М“ наводи поруку коју треба проследити која описује урезивање. Будући да је ово наша прва обавеза, рећи ћемо Инитиал цоммит.

Као што видите, датотеке су успешно урезане.

Ако сада покренете гит статус, видећете да он каже да је радни директоријум чист јер смо датотеке предали и од тада нисмо изменили ниједну датотеку.

Ако покренемо следећу команду:

git log

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

Сада успешно пратимо локални пројекат помоћу гит-а!

Клонирање удаљеног спремишта

Ако желимо да пратимо постојећи удаљени пројекат помоћу гит-а, онда морамо да укуцамо команду у следећем формату:

git clone  

На пример, користићу гит спремиште на овом линку.

Прво ћу прећи у директоријум у који желим да клонирам пројекат, мада и ово можете одредити као што је горе приказано.

Идите на горњу везу до спремишта и кликните на дугме „Клонирај или преузми“, а затим копирајте везу која је тамо дата.

Затим унесите:

git clone //github.com/sanjulamadurapperuma/GitDemoMedium.git

Сада смо успешно клонирали спремиште.

Ако унесемо следећу команду, видећемо све датотеке које су сада у локалном директоријуму.

ls -la

Преглед информација о удаљеном спремишту

Ако откуцате следећу команду:

git remote -v

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

Ако бисте откуцали команду

git branch -a

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

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

Сада када смо унели промену у наш код, следећа акција коју морамо да урадимо је да ове промене потиснемо у удаљено спремиште

Убацивање промена у удаљено спремиште

Следећа команда ће приказати све промене које су извршене у датотекама.

git diff

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

Сада их додајте у сценско подручје

git add -A

Поново покрените гит статус

Сада можемо видети да је симпле.пи спреман за предају.

Затим унесите наредбу за урезивање са поруком

git commit -m “Updated hello function”

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

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

Покрените следећу команду:

git pull origin master

Будући да смо већ ажурни, сада можемо да убацимо промене у удаљено спремиште.

Сада покрените следеће:

git push origin master

Успешно смо пребацили промене у главну грану удаљеног спремишта!

Креирање гране за функцију или издање

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

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

git branch simple-greeting

Сад ако трчиш

git branch

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

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

git checkout simple-greeting

Ако укуцате гит бранцх, видећете да сте сада на грани једноставног поздрављања.

Сада морамо да извршимо промене у пројекту. Прећи ћемо на пројекат и дефинисати функцију поздрављања.

Сада ћемо поновити поступак извршавања ових промена:

git status
git add -A
git commit -m “Greeting Function”

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

Гурање гране у удаљено спремиште након урезивања

Унесите следећу команду:

git push -u origin simple-greeting

где је оригин име спремишта, а симпле-поздрав је грана на коју желимо да притиснемо.

Сада смо гурнули грану једноставног поздрава у удаљено спремиште. Ако укуцате:

git branch -a

Видимо да у нашем удаљеном спремишту сада имамо грану једноставног поздрављања. Зашто треба да гурнемо грану до удаљеног спремишта? Јер у неким компанијама ту воде јединствено тестирање и у разним другима како би се уверили да код ради добро пре него што се споји са главном граном.

С обзиром на то да су сва тестирања добро прошла (овде нећемо улазити у детаље), сада можемо спојити грану једноставног поздрава са главном граном.

Спајање гране

Прво морамо да се пријавимо у локалну главну грану

git checkout master

Повуците све промене у удаљеној главној грани:

git pull origin master

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

git branch —-merged

грана са једноставним поздравом овде се неће појавити јер је још нисмо спојили.

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

git merge simple-greeting

(Имајте на уму да смо тренутно у главној грани)

Сада када је спојен, можемо да потиснемо промене у главну грану удаљеног спремишта.

git push origin master

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

Брисање гране

Будући да је функција сада постављена, можемо избрисати грану једноставног поздрављања. Да бисмо још једном проверили спајање изведено у претходном одељку, можемо покренути:

git branch --merged

Ако се овде појави једноставни поздрав, то значи да смо објединили све промене и да грана сада може да се одбаци.

git branch -d simple-greeting

Сада је грана локално избрисана.

Али пошто смо потиснули грану на удаљено спремиште, она је и даље тамо у удаљеном спремишту. То се може видети покретањем:

git branch -a

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

git push origin --delete simple-greeting

Ако се поново кандидујемо

git branch -a

можемо видети да је грана сада избрисана и из удаљеног спремишта.

Честитам!!! Сада сте мајстор у основним, али критичним Гит наредбама!

За референцу или употребу овог водича, ево јавне везе ГитХуб складишта

У међувремену, дајте члану онолико колико желите, ако вам се свидео, коментаришите доле за било какве недоумице. Такође, погледајте мој профил на ЛинкедИн-у и пратите ме на Твиттер-у!