gowatch — это инструмент командной строки, который каждый раз, когда вы сохраняете файл на Go или шаблонный файл, создаёт и (пере)запускает ваш проект на Go.
Установка
Чтобы установить gowatch, используйте команду go install:
go install github.com/silenceper/gowatch@latest
Затем вы можете добавить двоичный файл gowatch в переменную среды PATH в вашем файле ~/.bashrc или ~/.bash_profile:
Если у вас уже установлен gowatch, обновить его просто:
go get -u github.com/silenceper/gowatch
Использование
gowatch
Gowatch будет следить за событиями файлов, и каждый раз, когда вы создаёте, изменяете или удаляете файл, он будет создавать и перезапускать приложение. Если go build возвращает ошибку, она будет записана в stdout.
Параметры поддержки
Пример:
gowatch -o ./bin/demo -p ./cmd/demo
Файл конфигурации
В большинстве случаев вам не нужно указывать конфигурацию. Вы можете выполнить большинство требований, напрямую выполнив команду gowatch.
Вы можете инициализировать файл конфигурации gowatch.yml в текущем каталоге с настройками по умолчанию, выполнив следующую команду:
gowatch init
Создайте файл gowatch.yml в каталоге выполнения:
# Пример конфигурации gowatch.yml
# Имя исполняемого файла, созданного в текущем каталоге выполнения. По умолчанию используется имя текущего каталога.
appname: "test"
# Укажите команду для запуска после завершения сборки
run_cmd: "./run.sh"
# Укажите каталог, в котором хранятся скомпилированные объектные файлы
output: /bin/demo
# Суффикс имени файла, за которым необходимо следить. По умолчанию есть только файл '.go'.
watch_exts:
- .yml
# Каталог, который должен прослушивать изменения файлов. По умолчанию только текущий каталог.
watch_paths:
- ../pk
# Дополнительные параметры, которые необходимо добавить при запуске приложения
cmd_args:
- arg1=val1
# Дополнительные параметры, которые необходимо добавить при сборке приложения
build_args:
- -race
# Необходимо увеличить переменные среды, текущие переменные среды загружаются по умолчанию
envs:
- a=b
# Нужно ли прослушивать изменения файлов в папке 'vendor'
vendor_watch: false
# Каталог, в котором не нужно прослушивать изменения файлов
excluded_paths:
- path
# Путь к основному пакету, также может быть один файл, несколько файлов разделены запятыми
build_pkg: ""
# Теги сборки
build_tags: ""
# Команды, которые можно выполнить перед сборкой приложения
#prev_build_cmds:
# - swag init
# Запретить ли автоматическую работу
disable_run: false
# Уровень журнала, поддержка debug, info, warn, error, fatal
log_level: "debug"
Автор @silenceper
Вдохновлён bee
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )