Repolode
revive-lint

revive-lint/revive

Быстрый настраиваемый линтер для Go, заменяющий golint и поддерживающий пользовательские правила и форматы вывода.

Звёзды
5,561
Форки
343
Открытые issues
89
Последний коммит
3 дня назад

Что это?

revive — линтер для исходного кода на Go. По умолчанию он выполняет те же проверки, что и golint, поэтому может заменить его без дополнительных изменений, а также предлагает большой набор дополнительных правил, которые можно включать и отключать через TOML-файл конфигурации. Для отдельных правил можно задавать аргументы, например максимальную длину функции или порог цикломатической сложности.

По сравнению с golint, revive позволяет отключать отдельные правила или весь линтер для одного файла либо диапазона строк с помощью директив в комментариях, выбирать один из нескольких форматов вывода (default, JSON, NDJSON, stylish, friendly, checkstyle, SARIF) и настраивать код завершения для каждого уровня серьёзности правил. Проверка типов необязательна: если пропустить её для правил, которым она не нужна, проверки выполняются быстрее.

revive также создан с расчётом на расширение. Разработчики могут писать собственные правила и форматтеры, а сам линтер можно использовать как библиотеку Go. Он интегрируется с редакторами, такими как VS Code, GoLand и vim, а также с CI-инструментами, включая golangci-lint и MegaLinter.

Ключевые возможности

  • 01Замена golint без дополнительных изменений, с совместимым поведением по умолчанию.
  • 02Включение, отключение и настройка отдельных правил через TOML-файл.
  • 03Отключение правил или линтера для файла, диапазона строк либо отдельной строки с помощью директив в комментариях.
  • 04Несколько форматов вывода, включая JSON, checkstyle и SARIF.
  • 05Поддержка пользовательских правил и форматтеров для расширения возможностей.

Сценарии использования

  • Единый для всей команды стандарт оформления Go-кода и более строгие проверки при код-ревью.
  • Запуск проверок Go в CI-пайплайнах с машиночитаемым выводом.
  • Замена golint в существующих проектах ради более высокой скорости и большего числа правил.
  • Создание специфичных для проекта правил линтинга для внутренних соглашений.

Быстрый старт

  1. 1

    Установите revive с помощью Homebrew

    brew install revive
  2. 2

    Или установите последний релиз из исходного кода с помощью Go

    go install github.com/mgechev/revive@latest
  3. 3

    Проверьте установку

    revive -version

Что важно знать

  • Без файла конфигурации revive запускает только правила по умолчанию, совместимые с golint, если не включён enable-default-rules и не задан файл конфигурации.

В подборках

Темы

Частые вопросы

Что такое revive?
Быстрый настраиваемый линтер для Go, заменяющий golint и поддерживающий пользовательские правила и форматы вывода. revive — линтер для исходного кода на Go. По умолчанию он выполняет те же проверки, что и golint, поэтому может заменить его без дополнительных изменений, а также предлагает большой набор дополнительных правил, которые можно включать и отключать через TOML-файл конфигурации. Для отдельных правил можно задавать аргументы, например максимальную длину функции или порог цикломатической сложности.
revive можно использовать бесплатно? Какая у него лицензия?
revive распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
revive всё ещё поддерживается?
Активно поддерживается. Последний коммит в revive — 3 нояб. 2026 г..
Для чего можно использовать revive?
Единый для всей команды стандарт оформления Go-кода и более строгие проверки при код-ревью. Запуск проверок Go в CI-пайплайнах с машиночитаемым выводом. Замена golint в существующих проектах ради более высокой скорости и большего числа правил. Создание специфичных для проекта правил линтинга для внутренних соглашений.
Как установить revive?
Установите revive с помощью Homebrew: brew install revive Или установите последний релиз из исходного кода с помощью Go: go install github.com/mgechev/revive@latest Проверьте установку: revive -version
Где скачать revive?
Исходный код и инструкции по установке — на GitHub: https://github.com/revive-lint/revive

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Расширяемый линтер для ECMAScript/JavaScript, который находит проблемные конструкции в коде и умеет автоматически исправлять многие из них.

27,6 тыс.+4 за неделю5,2 тыс.JavaScriptMITАктивно поддерживаетсяОбновлён 21 час назад

Инструмент статического анализа Java-кода, который проверяет соответствие стандарту оформления и настраивается через XML; запускается из командной строки, Ant или Maven.

9,6 тыс.+2 за неделю4,3 тыс.JavaLGPL-2.1Обновлён 21 час назад