mirror of
https://github.com/bakhirev/assayo.git
synced 2024-11-16 08:11:40 +00:00
update
This commit is contained in:
parent
d53ae9b3e3
commit
a0e3f4f5ff
65
README.md
65
README.md
|
@ -34,6 +34,34 @@ Visualization and analysis of your git repository data ([demo](https://assayo.on
|
|||
- forecast of rework time;
|
||||
- forecast cost;
|
||||
|
||||
### Table of contents
|
||||
|
||||
- [How to quickly view the number of commits?](#link-1)
|
||||
- [How to concat authors?](#link-2)
|
||||
- [How to export data from git?](#link-3)
|
||||
- [For online viewing](#link-4)
|
||||
- [For offline viewing](#link-5)
|
||||
- [How to view the report?](#link-6)
|
||||
- [Online](#headers)
|
||||
- [Offline](#headers)
|
||||
- [How to rebuild the report build?](#link-)
|
||||
- [How to view a report on a group of microservices?](#link-)
|
||||
- [How to brand the interface?](#link-)
|
||||
- [How to sign commits?](#link-)
|
||||
- [How to add checking for commit message?](#link-)
|
||||
- [Use file commit-msg](#link-)
|
||||
- [Use package pre-commit](#link-)
|
||||
- [How to automate data collection?](#link-)
|
||||
- [With backend](#link-)
|
||||
- [Without backend](#link-)
|
||||
- [DevOps (CI/CD)](#link-)
|
||||
- [Public server](#link-)
|
||||
- [Private server](#link-)
|
||||
- [How to update the Docker image?](#link-)
|
||||
- [How to add or edit a translation?](#link-)
|
||||
- [RoadMap](#link-)
|
||||
- [Contacts](#link-)
|
||||
|
||||
### How to quickly view the number of commits?
|
||||
|
||||
In the root directory of your project, run:
|
||||
|
@ -68,12 +96,13 @@ This file contains data for show a report.
|
|||
|
||||
The difference between the online and offline format is the presence of a wrapper for strings. The offline format will be pulled up like a `js` file if you just opened `/build/index.html `
|
||||
|
||||
### How to view the report online?
|
||||
### How to view the report?
|
||||
#### Online
|
||||
- go to the [website](https://assayo.online/);
|
||||
- click the “[Demo](https://assayo.online/demo)” button;
|
||||
- drag the `log.txt` file into the browser window;
|
||||
|
||||
### How to view the report offline?
|
||||
#### Offline
|
||||
- download this repository;
|
||||
- drag the `log.txt` file to the `/build` folder;
|
||||
- run `/build/index.html`;
|
||||
|
@ -109,8 +138,40 @@ JIRA-1234 feat(profile): Added avatar for user
|
|||
- feature `(profile - new page on site or new function, use one (two) short wordor an abbreviation)`
|
||||
- what problem were solved `(Added avatar for user)`
|
||||
|
||||
### How to add checking for commit message?
|
||||
|
||||
#### Use file `commit-msg`
|
||||
|
||||
1. Create file `commit-msg` in folder `.git/hooks/`
|
||||
2. Add this text in file:
|
||||
```
|
||||
#!/usr/bin/env bash
|
||||
|
||||
if ! grep -iqE "(JIRA-[0-9]{1,5})(\s)(feat|fix|docs|style|refactor|test|chore)((\([a-z0-9_-]{1,}\)){0,})(:\s)([a-z]{1,})" "$1"; then
|
||||
echo "Need commit message like: JIRA-12 fix(profile): some text. Read Semantic Commit Messages" >&2
|
||||
exit 1
|
||||
fi
|
||||
```
|
||||
#### Use package [pre-commit](https://www.npmjs.com/package/pre-commit)
|
||||
|
||||
1. Add in file `package.json` property `commit-msg`:
|
||||
```
|
||||
...
|
||||
"commit-msg": {
|
||||
"regex": "(JIRA-[0-9]{1,5})(\\s)(feat|fix|docs|style|refactor|test|chore)((\\([a-z0-9_-]{1,}\\)){0,})(:\\s)([a-z]{1,})",
|
||||
"error-message": "Need commit message like: JIRA-12 fix(profile): some text Read Semantic Commit Messages"
|
||||
},
|
||||
...
|
||||
```
|
||||
2. Run command `npm install pre-commit`
|
||||
|
||||
|
||||
### How to automate data collection?
|
||||
|
||||
#### With backend
|
||||
|
||||
- use module [Assayo Crawler](https://github.com/bakhirev/assayo-crawler);
|
||||
|
||||
#### Without backend
|
||||
- create a clone of the repository you need;
|
||||
- copy the `build` folder to the root;
|
||||
|
|
|
@ -32,12 +32,42 @@
|
|||
- прогноз времени доработок;
|
||||
- прогноз стоимости;
|
||||
|
||||
### Содержание
|
||||
|
||||
- [Как быстро посмотреть количество коммитов?](#link-1)
|
||||
- [Как объединить авторов?](#link-2)
|
||||
- [Как выгрузить данные из git?](#link-3)
|
||||
- [Для онлайн просмотра](#link-4)
|
||||
- [Для офлайн просмотра](#link-5)
|
||||
- [Как посмотреть отчёт?](#link-6)
|
||||
- [Онлайн](#headers)
|
||||
- [Офлайн](#headers)
|
||||
- [Как пересобрать билд отчёта?](#headers)
|
||||
- [Как посмотреть отчёт по группе микросервисов?](#headers)
|
||||
- [Как брендировать интерфейс?](#headers)
|
||||
- [Как подписывать коммиты?](#headers)
|
||||
- [Как добавить проверку текста коммита?](#headers)
|
||||
- [Используя файл commit-msg](#headers)
|
||||
- [Используя пакет pre-commit](#headers)
|
||||
- [Как автоматизировать сбор данных?](#headers)
|
||||
- [С бекендом](#headers)
|
||||
- [Без бекенда](#headers)
|
||||
- [DevOps (CI/CD)](#headers)
|
||||
- [Публичный сервер](#headers)
|
||||
- [Приватный сервер](#headers)
|
||||
- [Обновление Docker-образа](#headers)
|
||||
- [Как добавить или отредактировать перевод?](#headers)
|
||||
- [Дорожная карта](#headers)
|
||||
- [Пожелания, предложения, замечания](#headers)
|
||||
|
||||
<a name="link-1"></a>
|
||||
### Как быстро посмотреть количество коммитов?
|
||||
|
||||
В корневой директории вашего проекта выполнить:
|
||||
```
|
||||
git shortlog -s -n -e
|
||||
```
|
||||
<a name="link-2"></a>
|
||||
### Как объединить авторов?
|
||||
В корневой директории вашего проекта нужно создать файл `.mailmap`.
|
||||
Пример содержания файла:
|
||||
|
@ -49,13 +79,16 @@ Alex B <alex@mail.uk> <man64@yahoo.com>
|
|||
```
|
||||
Подробнее про формат этого файла можно прочитать [тут](https://git-scm.com/docs/gitmailmap).
|
||||
|
||||
<a name="link-3"></a>
|
||||
### Как выгрузить данные из git?
|
||||
|
||||
<a name="link-4"></a>
|
||||
#### Для онлайн просмотра
|
||||
В корневой директории вашего проекта выполнить:
|
||||
```
|
||||
git --no-pager log --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%cN>%cE>%s" > log.txt
|
||||
```
|
||||
<a name="link-5"></a>
|
||||
#### Для офлайн просмотра
|
||||
|
||||
```
|
||||
|
@ -66,13 +99,14 @@ Git создаст файл `log.txt`.
|
|||
|
||||
Разница между онлайн и офлайн форматом в наличие обёртки для строк. Оффлайн формат будет подтягиваться, как `js` файл если вы просто открыли `/build/index.html`
|
||||
|
||||
### Как посмотреть отчёт онлайн?
|
||||
### Как посмотреть отчёт?
|
||||
#### Онлайн
|
||||
|
||||
- Перейти на [сайт](https://assayo.online/)
|
||||
- Нажать кнопку «[Демо](https://assayo.online/demo)»
|
||||
- Перетащить файл `log.txt` в окно браузера
|
||||
|
||||
### Как посмотреть отчёт офлайн?
|
||||
#### Офлайн
|
||||
- Скачать этот репозиторий
|
||||
- Перетащить файл `log.txt` в папку `/build`
|
||||
- Запустить `/build/index.html`
|
||||
|
@ -108,8 +142,39 @@ JIRA-1234 feat(profile): Added avatar for user
|
|||
- фича `(profile - раздел сайта, страница или новый функционал, одним словом)`
|
||||
- какую проблему решали `(Added avatar for user)`
|
||||
|
||||
### Как добавить проверку текста коммита?
|
||||
|
||||
#### Используя файл `commit-msg`
|
||||
|
||||
1. Создайте файл `commit-msg` в папке `.git/hooks/`
|
||||
2. Добавьте в файл следующий текст:
|
||||
```
|
||||
#!/usr/bin/env bash
|
||||
|
||||
if ! grep -iqE "(JIRA-[0-9]{1,5})(\s)(feat|fix|docs|style|refactor|test|chore)((\([a-z0-9_-]{1,}\)){0,})(:\s)([a-z]{1,})" "$1"; then
|
||||
echo "Need commit message like: JIRA-12 fix(profile): some text. Read Semantic Commit Messages" >&2
|
||||
exit 1
|
||||
fi
|
||||
```
|
||||
#### Используя пакет [pre-commit](https://www.npmjs.com/package/pre-commit)
|
||||
|
||||
1. Добавьте в файл `package.json` блок `commit-msg`:
|
||||
```
|
||||
...
|
||||
"commit-msg": {
|
||||
"regex": "(JIRA-[0-9]{1,5})(\\s)(feat|fix|docs|style|refactor|test|chore)((\\([a-z0-9_-]{1,}\\)){0,})(:\\s)([a-z]{1,})",
|
||||
"error-message": "Need commit message like: JIRA-12 fix(profile): some text Read Semantic Commit Messages"
|
||||
},
|
||||
...
|
||||
```
|
||||
2. Выполните команду `npm install pre-commit`
|
||||
|
||||
### Как автоматизировать сбор данных?
|
||||
|
||||
#### С бекендом
|
||||
|
||||
- используйте модуль [Assayo Crawler](https://github.com/bakhirev/assayo-crawler);
|
||||
|
||||
#### Без бекенда
|
||||
- создайте клон нужного вам репозитория;
|
||||
- скопируйте в корень папку `build`;
|
||||
|
|
|
@ -33,22 +33,29 @@ function getTranslationWrapper(translation: string) {
|
|||
};
|
||||
}
|
||||
|
||||
export default function initializationI18n(defaultLanguage?: string) {
|
||||
const translations = {
|
||||
de: getTranslationWrapper(de),
|
||||
en: getTranslationWrapper(en),
|
||||
es: getTranslationWrapper(es),
|
||||
fr: getTranslationWrapper(fr),
|
||||
ja: getTranslationWrapper(ja),
|
||||
pt: getTranslationWrapper(pt),
|
||||
ru: getTranslationWrapper(ru),
|
||||
zh: getTranslationWrapper(zh),
|
||||
};
|
||||
|
||||
const defaultLanguage = navigator.languages
|
||||
.filter((language) => language.length === 2 && translations[language])
|
||||
.shift() || 'en';
|
||||
|
||||
export default function initializationI18n(userLanguage?: string) {
|
||||
i18next.use(initReactI18next).init({
|
||||
lng: defaultLanguage || 'ru', // if you're using a language detector, do not define the lng option
|
||||
lng: userLanguage || defaultLanguage || 'ru', // if you're using a language detector, do not define the lng option
|
||||
debug: false,
|
||||
resources: {
|
||||
de: getTranslationWrapper(de),
|
||||
en: getTranslationWrapper(en),
|
||||
es: getTranslationWrapper(es),
|
||||
fr: getTranslationWrapper(fr),
|
||||
ja: getTranslationWrapper(ja),
|
||||
pt: getTranslationWrapper(pt),
|
||||
ru: getTranslationWrapper(ru),
|
||||
zh: getTranslationWrapper(zh),
|
||||
},
|
||||
resources: translations,
|
||||
// if you see an error like: "Argument of type 'DefaultTFuncReturn' is not assignable to parameter of type xyz"
|
||||
// set returnNull to false (and also in the i18next.d.ts options)
|
||||
// returnNull: false,
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
@ -37,7 +37,6 @@ export function getNewEmployeesSettings(
|
|||
],
|
||||
};
|
||||
}
|
||||
|
||||
export default function getEmptySettings(): IUserSetting {
|
||||
return {
|
||||
version: 1,
|
||||
|
|
Loading…
Reference in a new issue