Руковање променама датотека помоћу Гита

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

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

Класификовање датотека у оквиру Гит -а


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

У основи имамо три врсте датотека ГИТ, сваки има свој тренутак у спремишту, да видимо шта су ово:

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

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

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

Практичан пример класификације датотека


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

1- На нашем рачунару ћемо направити нову фасциклу под називом гит датотеке.

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

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

4- Поновићемо претходни корак и креираћемо нову датотеку, ако видимо резултат поновног понављања гит статус пребројаћемо обе датотеке, да видимо:

5- Сада ћемо креирати нову датотеку под називом .гитигноре, забележите тачку пре датотеке и унутра ћемо поставити име једне од наших претходних датотека, то радимо поново гит статус и видећемо да сада добијамо само датотеку која се у њој не налази .гитигноре и датотеку .гитигноре управо смо створили:

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

Команда гит адд


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

Како се користи?Има неколико начина да се користи, а најчешћи је гит додај име датотеке, где му кажемо коју датотеку да дода или ако то не можемо да урадимо гит адд. где тачка представља све датотеке које су измењене или се не налазе у спремишту.

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

Користећи гит адд


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

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

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

Сада ћемо додати нову датотеку у спремиште, али то нећемо учинити са постојећом датотеком или оном коју смо претходно изменили. За ово морамо само да урадимо гит адд оурфиленаме. Онда ћемо учинити гит статус. Хајде да видимо:

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

Избришите датотеке из спремишта


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

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

Команда гит рм - кеширана


Коришћењем наредбе рм са додатном опцијом кеширано, оно што ми радимо је брисање предметне датотеке из индексМеђутим, задржаћемо је на свом рачунару, ова команда се често користи када још не желимо да додамо ову датотеку у наше спремиште, али морамо да сачувамо остале промене.

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

Напомињемо да је датотека невФиле3 које смо додали у наше спремиште сада не постоји и има класификацију неопраћен.

Гит рм команда


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

Погледајмо у следећем примеру како то функционише када га применимо на датотеку, у овом случају ћемо додати невФиле3 са гит адд а онда ћемо се на ово пријавити гит рм:

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

Више од .гитигноре


Видели смо да можемо додати одређену датотеку у нашу датотеку .гитигнореМеђутим, када радимо у окружењу у којем обрађујемо стотине или можда хиљаде датотека, то није баш практично, зато можемо користити обрасце.

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

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

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

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

wave wave wave wave wave