1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/inherd-coco

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Coco

Сборка Coco

(также известен как кокосовое дерево, сок), автоматический анализатор метрик DevOps.

случаи использования: случаи Coco

Онлайн демонстрации:

ОС: macOS, Windows, GNU/Linux

Использование

  1. Установите или скачайте компоненты Coco из выпусков, а также скачайте ctags: Windows
  2. Используйте coco init для генерации файла конфигурации
  3. Настройте coco.yml
  4. Необязательно: используйте coco plugins для загрузки плагинов
  5. Запустите Coco
    • coco, собирает данные из источника
    • visual, визуализация данных
    • suggest, генерирует рекомендации
  6. Загрузите плагины (необязательно)
    • coco_container, анализ контейнеров
    • coco_pipeline, анализ рабочих процессов
    • coco_struct, анализ модели с помощью ctags
    • coco_swagger, анализ Swagger API

URL для визуализации:

Оффлайн использование:

  1. Скачайте coco, visual исполняемые файлы
  2. Скачайте coco_plugins_xxxx для вашей платформы
  3. Распакуйте coco_plugins_xxxx в директорию plugins

Использование Coco

coco 0.5.3

ИСПОЛЬЗОВАНИЕ:
    coco [ПАРАМЕТРЫ] [ПОДКОММАНДА]

ФЛАГИ:
    -h, --help       вывод справочной информации
    -V, --version    вывод информации о версии
```ПАРАМЕТРЫ:
    -b, --branches <branches>            Обрабатывать все ветки [по умолчанию: true]
        --commits <commits>              Обрабатывать все коммиты [по умолчанию: true]
    -c, --config-file <config-file>      Конфигурационный файл .yml [по умолчанию: coco.yml]
    -d, --debug <debug>                  Отладочный режим [по умолчанию: false]
    -f, --file-history <file-history>    Проанализировать историю изменений файлов из git & cloc [по умолчанию: false]
    -y, --git-years <git-years>          Установить годы анализа коммитов git, по умолчанию 1, [по умолчанию: 1.0]
    -t, --tags <tags>                    Обрабатывать все тэги [по умолчанию: true]

ПОДКОММАНДЫ:
    help       Вывод этой справки или справки указанной подкоманды
    init       Создает файлы конфигурации по умолчанию
    plugins    Загружает плагины с GitHub

coco --file-history=true --git-years=3


### coco.yml

#### Конфигурация

Пример:

```yml
# Кодовая база
repos:
  - url: https://github.com/coco-rs/coco.fixtures
  - url: https://github.com/coco-rs/coco.fixtures2
  - url: .
    languages: [Rust]
  - url: https://github.com/datum-lang/scie
  - url: https://github.com/projectfluent/fluent-rs
    languages: [Rust, JavaScript]                     # Установите языки для анализа структуры

plugins:
  - name: swagger
  - name: struct
    config:
      - key: ctags                       # Укажите путь до ctags для macOS
        value: /usr/local/bin/ctags
        
git:
  local: true # true будет использовать `git clone`, false будет использовать libgit2

Документация

Разработка

См. в DEVELOPMENT.md

Онлайн видео

Bilibili: Инструмент анализа производительности разработки Coco Первое онлайн обсуждение### План развития

Анализ и отчет

Анализ

  • анализ Git
    • ветки
    • изменения
    • коммиты
  • анализ cloc
    • сводка
    • архитектура файлов
  • анализ фреймворков
  • анализ архитектуры
    • организация файлов/папок

Отчет

  • отчет в формате HTML
  • вывод JSON
  • API запрос?

Предложения и примеры исследований

Технология

  • Парсер AST: include_parser/mod.rs

  • Веб-сервер: light_server.rs

  • CLI: visual.rs, coco.rs, suggest.rs## TODO- [x] Анализ Git

    • Слияние кода с coca
    • Поддержка локального репозитория
    • Представление проекта в виде календаря https://observablehq.com/@d3/calendar-view
    • Изменения
      • Изменение строки
      • Измененный файл
      • Номер коммита
    • Анализ веток Git
    • Анализ времени коммитов
      • Хранение всех коммитов
      • Количество ночей работы
  • Анализ cloc

    • Использование инструмента cloc Tokei
    • История изменений cloc
    • Изменения cloc в коммите
  • Анализ фреймворков

    • Детектор фреймворков
    • Слияние с scie-detector
    • Вывод информации о фреймворках
    • Генерация технологической стековой конфигурации
    • Облачные технологии
  • Анализ модулей

    • Базовый фреймворк для директорий
      • Поддержка .gitignore
    • "Цветок" кода
    • Анализ включений
      • Парсер кода: pest
      • Поддержка языков
  • Анализ команды

    • Время присоединения и общее время участия
      • Среднее время между первым и последним коммитами: анализ затрат на обучение
      • Среднее время участия - моменты присоединения членов команды
    • рост количества участников
    • подсчёт размера системы и обучения
  • анализ коммитов

    • анализ временного распределения коммитов (по часам)
    • поддержка регулярных выражений в конфигурации
    • морфология слов
    • создание меток
  • API рекомендаций

    • система управления документами
    • предложения для руководства
    • предложения для случаев
    • предложения для сервера Coco?
      • онлайн предложения?
      • ежедневная проверка ссылок
    • правила архитектурного дизайна
  • архитектура

    • проверка версий технологических стеков (более трёх лет?)
      • Maven Center
      • NPM Server
      • Go Server
  • инструменты

    • идентификация конфигураций инструментов
    • предложения по использованию инструментов (определение старых инструментов)
    • конфигурация облачных технологий
  • исследование случаев

    • главная страница: https://github.com/inherd/cases
    • автоматическое клонирование и автоматическая деплойка
    • todo скан
      • слияние с coca
    • поддержка нескольких платформ
      • macOS
      • GNU/Linux
      • Windows
        • исправление тестов
        • работающий вариант
    • модель C4
      • PUML для цепочки вызовов
        • символьный дизайн — IsA, UseInTheInterface, UsesInTheImplementation
    • плагины - [ ] Анализ структуры - [x] ctags - [ ] Визуальный - [x] UML
      • Swagger
      • Jenkinsfile
      • Dockerfile Визуальный и Отчетный - визуальное API
      • сервер статических файлов
      • экспорт активов
      • консольный запрос для проектов
      • запрос JSON API
      • CLI JSON API
  • веб-визуализация

    • организация кода d3.js
    • TypeScript с фронтендовой библиотекой
      • использовать Deno?
    • архитектура
    • git
      • история ветвей
    • коммиты за годы/месяцы
    • графическая поддержка скорости
      • коммиты кода ежедневно
      • время принятия PR ежедневно
    • скорость выполнения задач
      • анализ сообщений коммитов
      • затраченное время на задачи
    • продвинутая кодовая листва, Polyglot Code Explorer
  • отчётный

    • фреймворк
    • cloc
    • git
    • архитектураDevOps-трубопровод
  • Jenkinsfile примеров Coco

Интеграция долговых обязательств

Документы

Ссылки: Документация Libgit2

Часто задаваемые вопросы

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

Шаг 1

Загрузите Coco на ваш Mac с выпусков

Шаг 2

Переместите его (Coco) в предпочитаемую директорию, например:

mkdir ~/.coco
mv ~/Downloads/coco_macos ~/.coco/

Шаг 3

Настройте псевдоним для удобства использования, например:

echo 'alias coco="~/.coco/coco_macos"' >> ~/.zshrc

Шаг 4

Попробуйте использовать псевдоним coco:

coco -h

Если возникают проблемы с правами доступа, выполните следующую команду:

chmod -R u=rwx,g=rw,o=r ~/.coco/coco_macos

Затем попробуйте снова:

coco -h

Удачи!

Благодарность

JetBrains

Лицензия

Анализ ctags основан на https://github.com/dalance/ptags с лицензией MIT, см. в src.

Перепись парсера ctags выполнена на основе Golang проекта https://github.com/ruben2020/tags2uml с лицензией Apache.

@ 2020~2021 Этот код распространяется под лицензией MIT. См. LICENSE в этой директории.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Coco — это инструмент для анализа эффективности разработки, например, скорости разработки (на основе сложности архитектуры и изменений в строках кода), развития команды, исторического анализа, анализа первопричин и т. д. Он создаёт визуализированные отчёты и соответствующие рекомендации по улучшению. Это эффективный инструмент анализа DevOps с ф... Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/inherd-coco.git
git@api.gitlife.ru:oschina-mirror/inherd-coco.git
oschina-mirror
inherd-coco
inherd-coco
master