Гит

Гит Мерге -но-фф опција

Гит Мерге -но-фф опција

Разумевање опције Гит Мерге но-фф

Једноставност спајања гита једна је од његових предности. Током спајања, гит користи брзо премотавање унапред када примети да је ХЕАД тренутне гране предак урезивања које покушавате да спојите. У брзом премотавању унапред нема новог урезивања. Гит само помера показивач. Ако ово понашање није пожељно, можете употријебити заставицу но-фф да бисте креирали ново урезивање за спајање.

Како изгледа спајање са брзом напред и без ње

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

Ц0 -> Ц1 -> Ц2-> Ц3

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

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

Шетња кроз пример

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

Одељак 1: Постављање

Прво, можете створити гит спремиште следећим корацима:

$ мкдир мој_пројекат
$ цд мој_пројекат
$ гит инит
$ додирните а.ткт
$ гит адд -А
$ гит цоммит -м "Ц0: Додавање а.ткт "

Хајде сада да креирамо грану која се зове особине и извршимо неколико промена:

Карактеристике гране $ гит
$ гит цхецкоут функције
$ додир б.ткт
$ гит адд -А
$ гит цоммит -м "Ц1: Додавање б.ткт "
$ додир ц.ткт
$ гит адд -А
$ гит цоммит -м "Ц2: Додавање ц.ткт "
$ додир д.ткт
$ гит адд -А
$ гит цоммит -м "Ц3: Додавање д.ткт "

Одељак 2: Спајање са брзим прослеђивањем унапред

Вратимо се главној грани и у њу спојимо гране обележја:

$ гит цхецкоут мастер
$ гит мерге карактеристике

Излаз:

Ажурирање 08076фб… 9ее88еб
Убрзај
б.ткт | 0
ц.ткт | 0
д.ткт | 0
3 датотеке су промењене, 0 уметања (+), 0 брисања (-)
начин креирања 100644 б.ткт
начин стварања 100644 ц.ткт
створи режим 100644 д.ткт

Ако проверите историју, видећете:

$ гит лог --онелине
9ее88еб Ц3: Додавање д.ткт
ц72б92ц Ц2: Додавање ц.ткт
2е4039е Ц1: Додавање б.ткт
08076фб Ц0: Додавање а.ткт

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

Одељак 3: Без брзог прослеђивања

Поновите одељак 1 за нову фасциклу.

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

$ гит цхецкоут мастер
$ гит мерге --но-фф карактеристика

Отвориће следеће у подразумеваном уређивачу текста вашег гита:

Споји „карактеристике“ гране
# Унесите поруку урезивања да бисте објаснили зашто је ово спајање неопходно,
# нарочито ако спаја ажурирани узводно у грану теме.
#
# Редови који почињу са '#' ће се занемарити, а празна порука ће се прекинути
# починити.

Измените коментаре. У овом случају можете само да додате „Ц4:“ пре „Спајање грана„ карактеристика ““. Излаз би требао изгледати овако:

Спајање направљено „рекурзивном“ стратегијом.
б.ткт | 0
ц.ткт | 0
д.ткт | 0
3 датотеке су промењене, 0 уметања (+), 0 брисања (-)
начин креирања 100644 б.ткт
начин стварања 100644 ц.ткт
створи режим 100644 д.ткт

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

$ гит лог --онелине
е071527 Ц4: Спајање „карактеристика“ гране
бб79ц25 Ц3: Додавање д.ткт
692бд8ц Ц2: Додавање в.ткт
а0дф62а Ц1: Додавање б.ткт
7575971 Ц0: Додавање а.ткт

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

Закључак

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

Даље истраживање:

Референце:
Најбоље игре за ручно праћење
Оцулус Куест је недавно представио сјајну идеју ручног праћења без контролера. Са све већим бројем игара и активности које извршавају подршку формално...
Како приказати ОСД прекривач у целом екрану Линук апликација и игара
Играње игара преко целог екрана или коришћење апликација у режиму целог екрана без ометања може вам одсећи релевантне системске информације видљиве на...
Топ 5 карата за хватање игара
Сви смо видели и волели стримовање играња на ИоуТубе-у. ПевДиеПие, Јакесептицие и Маркиплиер само су неки од најбољих играча који су зарадили милионе ...