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

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

Интеграцијом и међуоперацијом Макефилес-а са Го-ом, можете аутоматизовати задатке који се понављају, поједноставити процесе изградње и побољшати продуктивност.

Разумевање Макефилес-а

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

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

Циљеви представљају жељене излазне датотеке или акције за Макефиле. Циљеви могу бити имена датотека или ознаке које описују задатак. На пример, циљ под називом

instagram viewer
чист може уклонити непотребне датотеке генерисане током процеса изградње.

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

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

Свака команда мора да почиње табулатором за препознавање.

буилд: маин.го утилс.го
го буилд -о миапп маин.го утилс.го

чист:
рм миапп

У горњем Макефиле-у постоје два циља: градити и чист.

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

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

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

маке буилд

Алат Маке ће управљати процесом компилације, омогућавајући вам да се фокусирате на писање кода.

Подешавање Макефиле-а за ваше Го пројекте

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

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

додирните Макефиле

Ваш Макефиле не би требало да има екстензије.

Након креирања Макефиле-а, можете писати команде, зависности и циљеве у датотеку за операције вашег пројекта.

Ево примера Макефиле-а који служи као алат за аутоматизацију изградње за ваш пројекат:

# Макефиле

# Променљиве
ГОЦМД=иди
ГОБУИЛД=$(ГОЦМД) градити
ГОТЕСТ=$(ГОЦМД) тест
ГОЦЛЕАН=$(ГОЦМД) чист

# Циљеви
изградити:
$(ГОБУИЛД) -о апликација.

тест:
$(ГОТЕСТ) ./...

чист:
$(ГОЦЛЕАН)
рм -ф апп

Можете да прилагодите свој Макефиле према специфичним потребама вашег пројекта.

Ево модификоване верзије Макефиле-а за прослеђивање додатних ознака и променљивих окружења током процеса тестирања или прављења вашег пројекта:

# Макефиле

# Променљиве
ГОЦМД=иди
ГОБУИЛД=$(ГОЦМД) градити
ГОТЕСТ=$(ГОЦМД) тест
ГОЦЛЕАН=$(ГОЦМД) чист
БИНАРИ_НАМЕ=апликација
ТЕСТ_ФЛАГС=-в

# Циљеви
изградити:
$(ГОБУИЛД)$(БИНАРИ_НАМЕ) .

тест:
$(ГОТЕСТ)$(ТЕСТ_ФЛАГС) ./...

чист:
$(ГОЦЛЕАН)
рм -ф $(БИНАРИ_НАМЕ)

У овом Макефиле-у постоје две нове променљиве са именом БИНАРИ_НАМЕ и ТЕСТ_ФЛАГС. Тхе БИНАРИ_НАМЕ променљива наводи име генерисане извршне датотеке.

Тхе ТЕСТ_ФЛАГС променљива вам омогућава да наведете додатне заставице приликом покретања тестова (у овом случају, заставица омогућава детаљан излаз током извршавања теста).

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

Можете додати ове линије у свој Макефиле ако треба да подесите ГООС и ГОАРЦХ променљиве за изградњу вашег пројекта за одређени оперативни систем или архитектуру.

# Макефиле

# Променљиве
ГОЦМД=иди
ГОБУИЛД=$(ГОЦМД) градити
ГОТЕСТ=$(ГОЦМД) тест
ГОЦЛЕАН=$(ГОЦМД) чист
БИНАРИ_НАМЕ=апликација
ТЕСТ_ФЛАГС=-в
ГООС=линук
ГОАРЦХ=амд64

# Циљеви
изградити:
$(ГОБУИЛД)$(БИНАРИ_НАМЕ) .

тест:
$(ГОТЕСТ)$(ТЕСТ_ФЛАГС) ./...

чист:
$(ГОЦЛЕАН)
рм -ф $(БИНАРИ_НАМЕ)

У ажурираном Макефиле-у постоје две нове варијабле за ГООС и ГОАРЦХ променљиве окружења које вам омогућавају да наведете циљни оперативни систем и архитектуру за вашу верзију (у овом случају, ГООС променљива је подешена на линук и ГОАРЦХ до амд64 да изгради пројекат за Линук на архитектури к86-64).

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

Можете се позвати на Иди на документацију за листу подржаних вредности за ГООС и ГОАРЦХ ако треба да направите за другу платформу.

Изградите аутоматизацију са Макефилес

Макефиле су такође згодне за компајлирање кода, генерисање документације и управљање зависностима.

Помоћу Макефилес-а можете аутоматизовати време компилације, штедећи време и труд.

Ево Макефиле-а који компајлира Го програм:

# Дефинишите променљиве
ГОЦМД = ићи
ГОБУИЛД = $(ГОЦМД) градити
БИНАРИ_НАМЕ = мој програм

# Подразумевани циљ
све: изградити

# Изградите циљ
изградити:
$(ГОБУИЛД)$(БИНАРИ_НАМЕ)

# Чиста мета
чист:
рм -ф $(БИНАРИ_НАМЕ)

Макефиле дефинише променљиве попут ГОЦМД (команда Иди) и ГОБУИЛД (команда буилд). Тхе градити циљ позива на иди градити команду да компајлирамо наш Го програм и произведемо бинарни фајл са наведеним именом (мипрограм у овом случају). Тхе чист таргет уклања генерисани бинарни фајл из пројекта.

Можете да користите Макефилес да аутоматизујете инсталацију зависности и да ажурирате спољне зависности вашег пројекта.

# Дефинишите променљиве
ГОЦМД = ићи
ГОБУИЛД = $(ГОЦМД) градити
ГОГЕТ = $(ГОЦМД) добити
БИНАРИ_НАМЕ = мој програм

# Подразумевани циљ
све: изградити

# Изградите циљ
изградити:
$(ГОБУИЛД)$(БИНАРИ_НАМЕ)

# Инсталирајте зависности
депс:
$(ГОГЕТ)

# Чиста мета
чист:
рм -ф $(БИНАРИ_НАМЕ)

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

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

Ево како можете аутоматски генеришите документацију за своје Го пројекте помоћу алатке годоц и Макефиле:

# Дефинишите променљиве
ГОДОЦ = годоц
ДОЦС_ДИР = документи

# Подразумевани циљ
сви: док

# Генеришите документацију
документи:
$(ГОДОЦ) -хтмл -дир. > $(ДОЦС_ДИР)/index.html

# Чиста мета
чист:
рм -рф $(ДОЦС_ДИР)

У Макефилеу, тхе доцс циљ позива на годоц команда са -хтмл заставицу да генеришете ХТМЛ документацију за ваш го код и сачувате документацију у доцс именик.

Ви ћете покренути направи документе команду за генерисање ажурне документације за ваш Го пројекат.

Макефиле су згодне за рад са оперативним системима заснованим на Уник-у

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

Још једна предност Макефилес-а је његова компатибилност са системима заснованим на Уник-у. Маке је широко подржан услужни програм на оперативним системима заснованим на Уник-у, укључујући Линук и мацОС, што га чини преносивим и поузданим алатом за програмере.