Перейти к основному содержимому

Beer. Начало истории.

Начнем с того, что - кто такой этот ваш Beer, и что он все таки делает. По идее это приложение для создания монорепозиториев которое написано на Golang. Но только с одной стороны. С другой стороны это более удобная версия Make. Я не смог найти толкового объяснения о том что это, поэтому оставим в голове такую мысль - это приложение для более удобного управления проектами.

Как работает?

Beer инициализирует проект и создает в нем файл config.beer, это и есть отправная точка. В файле config.beer описывается информация о исполняемых задачах в формате Beerlang, но о нем позднее.

Как установить?

В систему устанавливается бинарник beer. Да, пока что все, так как Beer еще в разработке.

Как использовать?

Инициализация

Для того чтобы использовать Beer, достаточно запустить инициализацию. Для этого есть два варианта: инициализация нового проекта, и инициализация в существующем проекте

beer init

Добавление нового проекта

Новый проект добавляется при помощи команды beer

beer create --type=project-type --dir=project-dir

В которой:

  • project-type - это тип проекта
ТипОписание
goСоздание проекта для языка Golang
go-workСоздание проекта для языка Golang с поддержкой Go Workspaces
react-csСоздание React сайта с помощью Create React App
react-cs-jsСоздание React сайта на JavaScript с помощью Create React App
react-vsСоздание React сайта с помощью Vite
react-vs-jsСоздание React сайта на JavaScript с помощью Vite
rustСоздание проекта для языка Rust
  • project-dir - это местоположение проекта

Местоположение может быть любым в папке монорепозитория. Здесь нет жесткого распределения директорий, поэтому создавайте проекты где угодно.

Импорт существующего проекта

Для того чтобы добавить уже существующий проект, нужно выполнить команду:

beer import ../exist-project ./new-directory

В которой:

  • exist-project - это путь до уже существующей директории с проектом
  • new-directory - это путь, в котором будет распологаться существующий проект

Также есть поддержка дополнительных параметров:

  • --submodule - если этот проект является уже существующим репозиторием, то его можно добавить как Git Submodule
  • --ln - по умолчанию Beer копирует файлы проекта, но можно включить режим ссылки на директорию

Что дальше?

Теперь время переходить к конфигурации Beer при помощи Beerlang и файла config.beer