This commit is contained in:
bakhirev 2024-08-19 16:17:30 +03:00
parent cafa5be9fd
commit 02e110fbc0
29 changed files with 617 additions and 423 deletions

View file

@ -98,6 +98,16 @@ Git will create a file `log.txt`.
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 `
#### If you use PowerShell in Windows
By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command.
```
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
```
Or open a saved file and manually change the encoding to UTF8.
<a name="link-6"></a>
### 📈 How to view the report?
<a name="link-7"></a>

View file

@ -35,28 +35,29 @@ Visualisierung und analyse ihrer Git-datenbank ([demo](https://assayo.online/dem
- [Wie kann ich daten aus git?](#link-6)
- [Für die onlineansicht](#link-7)
- [Zum surfen ohne internet](#link-8)
- [Wie kann ich den bericht sehen?](#link-9)
- [Online](#link-10)
- [Offline](#link-11)
- [Wie kann ich die berichtsdatei neu erstellen?](#link-12)
- [Wie kann ich den bericht zur microservices-gruppe anzeigen?](#link-13)
- [Wie kann ich die benutzeroberfläche in ihren markenfarben neu streichen?](#link-14)
- [Wie signiere ich commits?](#link-15)
- [How to add checking for commit message?](#link-16)
- [ Use file commit-msg](#link-17)
- [ Use package pre-commit](#link-18)
- [Wie kann ich die datenerfassung automatisieren?](#link-19)
- [With backend](#link-20)
- [Kein bekend](#link-21)
- [DevOps ](#link-22)
- [Öffentlicher server](#link-23)
- [Privater server](#link-24)
- [Aktualisieren eines Docker-Images](#link-25)
- [ About application](#link-26)
- [Architecture](#link-27)
- [Veröffentlichungen, ungefähr alle sechs monate. Was weiter:](#link-28)
- [Wie kann ich eine übersetzung hinzufügen oder bearbeiten?](#link-29)
- [Wünsche, Anregungen, Kommentare](#link-30)
- [If you use PowerShell in Windows](#link-9)
- [Wie kann ich den bericht sehen?](#link-10)
- [Online](#link-11)
- [Offline](#link-12)
- [Wie kann ich die berichtsdatei neu erstellen?](#link-13)
- [Wie kann ich den bericht zur microservices-gruppe anzeigen?](#link-14)
- [Wie kann ich die benutzeroberfläche in ihren markenfarben neu streichen?](#link-15)
- [Wie signiere ich commits?](#link-16)
- [How to add checking for commit message?](#link-17)
- [ Use file commit-msg](#link-18)
- [ Use package pre-commit](#link-19)
- [Wie kann ich die datenerfassung automatisieren?](#link-20)
- [With backend](#link-21)
- [Kein bekend](#link-22)
- [DevOps ](#link-23)
- [Öffentlicher server](#link-24)
- [Privater server](#link-25)
- [Aktualisieren eines Docker-Images](#link-26)
- [ About application](#link-27)
- [Architecture](#link-28)
- [Veröffentlichungen, ungefähr alle sechs monate. Was weiter:](#link-29)
- [Wie kann ich eine übersetzung hinzufügen oder bearbeiten?](#link-30)
- [Wünsche, Anregungen, Kommentare](#link-31)
<a name="link-4"></a>
### 🚀 Wie kann ich die anzahl der commits schnell sehen?
In der wurzelverzeichnis ihres projektes muss der befehl ausgeführt werden:
@ -87,41 +88,46 @@ git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict -
```
git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%aN>%aE>%s" | sed -e 's/\\/\\\\/g' | sed -e 's/`/"/g' | sed -e 's/^/report.push(\`/g' | sed 's/$/\`\);/g' | sed 's/\$/_/g' > log.txt
```
Git erstellt eine datei `log.txt`.
Diese datei enthält die daten zum erstellen des berichts.
Der unterschied zwischen den formaten liegt im vorhandensein einer wrapper für zeilen. Das format ohne internet wird wie eine js-datei geladen, wenn sie es einfach öffnen. `/build/index.html`
Git erstellt eine datei `log.txt`. Diese datei enthält die daten zum erstellen des berichts. Der unterschied zwischen den formaten liegt im vorhandensein einer wrapper für zeilen. Das format ohne internet wird wie eine js-datei geladen, wenn sie es einfach öffnen. `/build/index.html`
<a name="link-9"></a>
### 📈 Wie kann ich den bericht sehen?
#### If you use PowerShell in Windows
By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command.
```
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
```
Or open a saved file and manually change the encoding to UTF-8.
<a name="link-10"></a>
### 📈 Wie kann ich den bericht sehen?
<a name="link-11"></a>
#### Online
- gehe zu [Webseite](https://assayo.online/)
- den knopf drücken “[Demonstration](https://assayo.online/demo?lang=ru)”
- datei ziehen `log.txt` in das Browserfenster
<a name="link-11"></a>
<a name="link-12"></a>
#### Offline
- laden sie dieses repository herunter
- datei ziehen `log.txt` in den ordner`/build`
- starten `/build/index.html`
- oder ziehen sie einen ordner `/build` zu sich ins repository (der ort, an dem es liegt `log.txt`). Sie können den namen ändern. zum beispiel mit dem namen `/build` auf den namen `/report`
Es ist wichtig, dass die log.txt datei vom befehl für die offlineansicht erstellt wird.
<a name="link-12"></a>
<a name="link-13"></a>
### 🏭 Wie kann ich die berichtsdatei neu erstellen?
- Laden sie dieses repository herunter
- Erfüllen `npm install`
- Erfüllen `npm run build:local`
- Der neue build wird im ordner sein `/build`
<a name="link-13"></a>
<a name="link-14"></a>
### 🗃️ Wie kann ich den bericht zur microservices-gruppe anzeigen?
- Datei für jeden microservice generieren `log.txt` (`log-1.txt`, `log-2.txt`, `log-3.txt` usw.)
- Siehe “Wie kann ich den bericht mit internet ansehen?”. Im letzten schritt ziehen sie alle dateien gleichzeitig in das browserfenster.
- Siehe “Wie kann man den bericht ohne internet ansehen?” Im zweiten schritt ziehen sie die microservice-dateien alle (`log-1.txt`, `log-2.txt`, `log-3.txt` usw.) in den berichtsordner (`/build`).
<a name="link-14"></a>
<a name="link-15"></a>
### 🎨 Wie kann ich die benutzeroberfläche in ihren markenfarben neu streichen?
Sie können ihr skin für die schnittstelle schreiben. Kann geändert werden:
- **Überschrift**. Sie können es im URL-parameter angeben ```title```. Zum beispiel: ```?title=you company```
- **CSS stile**. Um dies zu tun, müssen sie die CSS-datei vorbereiten und ihre adresse im URL-parameter angeben ```theme```. Zum beispiel: ```?theme=//company.com/some.css```. Sie können klassennamen als selektoren verwenden. Die meisten von ihnen ändern sich nicht, wenn eine neue version veröffentlicht wird.
- **Sprache**. Sie können es im URL-parameter angeben ```lang```. Zum Beispiel: ```?lang=es```
<a name="link-15"></a>
<a name="link-16"></a>
### 📝 Wie signiere ich commits?
Folge der praxis [Conventional Commits 1.0.0](https://www.conventionalcommits.org/en/v1.0.0/). Zum beispiel:
```
@ -131,9 +137,9 @@ JIRA-1234 feat(profile): added avatar for user
- art der arbeit `(feat, fix, style, refactor, test, doc usw.)`
- arbeitsbereich `(profile - ein abschnitt der website, eine seite oder eine neue funktionalität, mit einem wort)`
- beschreibung der arbeit `(added avatar for user)`
<a name="link-16"></a>
### 👮 How to add checking for commit message?
<a name="link-17"></a>
### 👮 How to add checking for commit message?
<a name="link-18"></a>
#### Use file `commit-msg`
1. Create file `commit-msg` in folder `.git/hooks/`
2. Add this text in file:
@ -144,7 +150,7 @@ if ! grep -iqE "(JIRA-[0-9]{1,5})(\s)(feat|fix|docs|style|refactor|test|chore)((
exit 1
fi
```
<a name="link-18"></a>
<a name="link-19"></a>
#### Use package [pre-commit](https://www.npmjs.com/package/pre-commit)
1. Add in file `package.json` property `commit-msg`:
```
@ -156,27 +162,27 @@ fi
...
```
2. Run command `npm install pre-commit`
<a name="link-19"></a>
### 📚 Wie kann ich die datenerfassung automatisieren?
<a name="link-20"></a>
### 📚 Wie kann ich die datenerfassung automatisieren?
<a name="link-21"></a>
#### With backend
- use module [Assayo Crawler](https://github.com/bakhirev/assayo-crawler);
<a name="link-21"></a>
<a name="link-22"></a>
#### Kein bekend
- erstellen sie einen klon ihres repositorys;
- kopieren sie den ordner `build` aus dem aktuellen repository;
- öffnen `build/index.html` im browser und zu lesezeichen hinzufügen;
- fügen sie eine verknüpfung hinzu `build/assets/ci-cd.sh` in den startordner (windows);
Jedes mal, wenn der computer neu gestartet wird, aktualisiert das skript die statistiken für alle daten, die automatisch in den hauptzweig aufgenommen wurden.
<a name="link-22"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-23"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-24"></a>
#### Öffentlicher server
Sie können eine datendatei zum erstellen eines berichts auf eine öffentliche URL hochladen. Sie können die Website verwenden, um sie zu visualisieren [assayo](https://assayo.online/). Geben sie im URL-parameter die adresse an, an der die daten liegen ```dump```:
```
https://assayo.online/demo/?dump=//you_site.com/some/log.txt
```
<a name="link-24"></a>
<a name="link-25"></a>
#### Privater server
- herunterladen [docker das bild](https://hub.docker.com/r/bakhirev/assayo);
- führen Sie es im lokalen netzwerk aus;
@ -187,30 +193,30 @@ assayo_url - die adresse des assayo-containers, er hört auf port 80;
you_url - URL die adresse ihres containers mit git-logs;
```
Standardmäßig wird das abbild an der folgenden adresse ausgeführt ```http://127.0.0.1:80/```. Wenn es nicht funktioniert, überprüfen sie, ob der port 80 frei ist.
<a name="link-25"></a>
<a name="link-26"></a>
#### Aktualisieren eines Docker-Images
- befehl ausführen ```npm run build:docker```
- befehl ausführen ```docker build -t assayo .```
- ergebnis überprüfen ```docker run --name assayo -p 80:80 -d assayo```;
- befehl ausführen ```docker tag assayo bakhirev/assayo:latest```;
- senden sie ein containerimage an Docker Hub ```docker push bakhirev/assayo:latest```;
<a name="link-26"></a>
### 🛠️ About application
<a name="link-27"></a>
### 🛠️ About application
<a name="link-28"></a>
#### 📐 Architecture
<img src="https://raw.githubusercontent.com/bakhirev/assayo-crawler/12af4410fc93384cafb108a4429e43f9a874dbaa/schema.svg" width="70%" />
1. [Reports showcase UI](https://github.com/bakhirev/assayo-showcase) displays a list of available reports. Each report consists of a title, description, and a list of repositories.
2. [Crawler service](https://github.com/bakhirev/assayo-crawler) collects repository logs for the report.
3. [Log visualization UI](https://github.com/bakhirev/assayo) **(you here)** displays report. Needs a log file for work.
<a name="link-28"></a>
<a name="link-29"></a>
#### 🈯 Veröffentlichungen, ungefähr alle sechs monate. Was weiter:
Schau [haupt dokumentation](https://github.com/bakhirev/assayo/blob/main/documents/RU.md)
<a name="link-29"></a>
<a name="link-30"></a>
#### 🗺️ Wie kann ich eine übersetzung hinzufügen oder bearbeiten?
Sie können eine neue übersetzung hinzufügen oder die aktuelle im abschnitt korrigieren ```ts/translations/```.
[Anleitung](https://github.com/firstcontributions/first-contributions)
<a name="link-30"></a>
<a name="link-31"></a>
#### 📧 Wünsche, Anregungen, Kommentare
- telegramm [@bakhirev](https://t.me/bakhirev) (vorrangiger kommunikationsweg)
- [alexey-bakhirev@yandex.ru](mailto:alexey-bakhirev@yandex.ru)

View file

@ -36,28 +36,29 @@ Visualization and analysis of git commit statistics. Team Lead performance tool.
- [How to export data from git?](#link-6)
- [For online viewing](#link-7)
- [For offline viewing](#link-8)
- [How to view the report?](#link-9)
- [Online](#link-10)
- [Offline](#link-11)
- [How to rebuild the HTML report from source code?](#link-12)
- [How to view a report on a group of microservices?](#link-13)
- [How to brand the interface?](#link-14)
- [How to sign commits?](#link-15)
- [How to add checking for commit message?](#link-16)
- [Use file commit-msg](#link-17)
- [Use package pre-commit](#link-18)
- [How to automate data collection?](#link-19)
- [With backend](#link-20)
- [Without backend](#link-21)
- [DevOps ](#link-22)
- [Public server](#link-23)
- [Private server](#link-24)
- [How to update the Docker image?](#link-25)
- [ About application](#link-26)
- [Architecture](#link-27)
- [How to add or edit a translation?](#link-28)
- [RoadMap:](#link-29)
- [Feedback, comments](#link-30)
- [If you use PowerShell in Windows](#link-9)
- [How to view the report?](#link-10)
- [Online](#link-11)
- [Offline](#link-12)
- [How to rebuild the HTML report from source code?](#link-13)
- [How to view a report on a group of microservices?](#link-14)
- [How to brand the interface?](#link-15)
- [How to sign commits?](#link-16)
- [How to add checking for commit message?](#link-17)
- [Use file commit-msg](#link-18)
- [Use package pre-commit](#link-19)
- [How to automate data collection?](#link-20)
- [With backend](#link-21)
- [Without backend](#link-22)
- [DevOps ](#link-23)
- [Public server](#link-24)
- [Private server](#link-25)
- [How to update the Docker image?](#link-26)
- [ About application](#link-27)
- [Architecture](#link-28)
- [How to add or edit a translation?](#link-29)
- [RoadMap:](#link-30)
- [Feedback, comments](#link-31)
<a name="link-4"></a>
### 🚀 How to quickly view the number of commits?
In the root directory of your project, run:
@ -88,41 +89,46 @@ git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict -
```
git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%aN>%aE>%s" | sed -e 's/\\/\\\\/g' | sed -e 's/`/"/g' | sed -e 's/^/report.push(\`/g' | sed 's/$/\`\);/g' | sed 's/\$/_/g' > log.txt
```
Git will create a file `log.txt`.
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 `
Git will create a file `log.txt`. 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 `
<a name="link-9"></a>
### 📈 How to view the report?
#### If you use PowerShell in Windows
By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command.
```
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
```
Or open a saved file and manually change the encoding to UTF-8.
<a name="link-10"></a>
### 📈 How to view the report?
<a name="link-11"></a>
#### Online
- go to the [website](https://assayo.online/);
- click the “[Demo](https://assayo.online/demo?ref=github&lang=en)” button;
- drop the `log.txt` file into the browser window;
<a name="link-11"></a>
<a name="link-12"></a>
#### Offline
- download this repository `git clone https://github.com/bakhirev/assayo.git`;
- drop the `log.txt` file to the `/build` folder;
- run `/build/index.html`;
- or drop the `/build` folder to your repository (where the `log.txt` is located). You can change the name. For example, from `/build` to `/report`.
In this case, it is important that the `log.txt` file is generated by the command for offline viewing.
<a name="link-12"></a>
<a name="link-13"></a>
### 🏭 How to rebuild the HTML report from source code?
- download this repository `git clone https://github.com/bakhirev/assayo.git`
- run `npm install`
- run `npm run build:local`
- the new HTML build will be in the `/build` folder
<a name="link-13"></a>
<a name="link-14"></a>
### 🗃️ How to view a report on a group of microservices?
- generate for each microservice file `log.txt` (`log-1.txt`, `log-2.txt`, `log-3.txt` and etc.) You can do this manually, or use the [Assayo Crawler](https://github.com/bakhirev/assayo-crawler) module for automatic log collection;
- see “How to view an online report?”. At the last step, drag all the files at once into the browser window.
- see “How to see a report offline?”. At the second step, drag all microservice files (`log-1.txt`, `log-2.txt`, `log-3.txt` and etc.) to the report folder (`/build`).
<a name="link-14"></a>
<a name="link-15"></a>
### 🎨 How to brand the interface?
You can create your own interface theme. Options:
- **Title**. You can set default document title in the URL parameter ```title```. Example: ```?title=You Company```
- **Visual theme**. To do this, you need to prepare a CSS file with new styles and specify its URL in the ```theme``` parameter. Example: ```?theme=//company.com/some.css```. You can use class names as selectors. Most of them do not change in new versions.
- **Language**. You can set language in the URL parameter ```lang```. Example: ```?lang=es```
<a name="link-15"></a>
<a name="link-16"></a>
### 📝 How to sign commits?
Follow the [Conventional Commits 1.0.0](https://www.conventionalcommits.org/en/v1.0.0/). Example:
```
@ -132,9 +138,9 @@ JIRA-1234 feat(profile): Added avatar for user
- type of work `(feat, fix, style, refactor, test, doc и т.д.)`
- feature `(profile - new page on site or new function, use one (two) short wordor an abbreviation)`
- what problem were solved `(Added avatar for user)`
<a name="link-16"></a>
### 👮 How to add checking for commit message?
<a name="link-17"></a>
### 👮 How to add checking for commit message?
<a name="link-18"></a>
#### Use file `commit-msg`
1. Create file `commit-msg` in folder `.git/hooks/`
2. Add this text in file:
@ -145,7 +151,7 @@ if ! grep -iqE "(JIRA-[0-9]{1,5})(\s)(feat|fix|docs|style|refactor|test|chore)((
exit 1
fi
```
<a name="link-18"></a>
<a name="link-19"></a>
#### Use package [pre-commit](https://www.npmjs.com/package/pre-commit)
1. Add in file `package.json` property `commit-msg`:
```
@ -157,27 +163,27 @@ fi
...
```
2. Run command `npm install pre-commit`
<a name="link-19"></a>
### 📚 How to automate data collection?
<a name="link-20"></a>
### 📚 How to automate data collection?
<a name="link-21"></a>
#### With backend
- use module [Assayo Crawler](https://github.com/bakhirev/assayo-crawler);
<a name="link-21"></a>
<a name="link-22"></a>
#### Without backend
- create a clone of the repository you need;
- copy the `build` folder to the root;
- open `build/index.html` in the browser and add it to bookmarks;
- add a shortcut to `build/assets/ci-cd.sh` to the startup folder (Windows);
Every time you restart the computer, the script will update statistics on all the data that automatically merged into the main branch.
<a name="link-22"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-23"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-24"></a>
#### Public server
You can upload the data file for report construction to a public URL. And use the websites [assayo](https://assayo.online/?ref=github&lang=en) to visualize it.
```
https://assayo.online/demo/?dump=//you_site.com/some/log.txt
```
<a name="link-24"></a>
<a name="link-25"></a>
#### Private server
- download the [docker image](https://hub.docker.com/r/bakhirev/assayo);
- run it on your local network;
@ -188,27 +194,27 @@ assayo_url - URL of the assayo container, it listens on port 80;
you_url - URL of your container with git logs;
```
By default, the image will run at ```http://127.0.0.1:80/```. If it doesn't work, check if port 80 is free.
<a name="link-25"></a>
<a name="link-26"></a>
#### How to update the Docker image?
- run ```npm run build:docker```
- run ```docker build -t assayo .```
- visually check the image ```docker run --name assayo -p 80:80 -d assayo```;
- add tag ```docker tag assayo bakhirev/assayo:latest```;
- push image to [Docker Hub](https://hub.docker.com/r/bakhirev/assayo) ```docker push bakhirev/assayo:latest```;
<a name="link-26"></a>
### 🛠️ About application
<a name="link-27"></a>
### 🛠️ About application
<a name="link-28"></a>
#### 📐 Architecture
<img src="https://raw.githubusercontent.com/bakhirev/assayo-crawler/12af4410fc93384cafb108a4429e43f9a874dbaa/schema.svg" width="70%" />
1. [Reports showcase UI](https://github.com/bakhirev/assayo-showcase) displays a list of available reports. Each report consists of a title, description, and a list of repositories.
2. [Crawler service](https://github.com/bakhirev/assayo-crawler) collects repository logs for the report.
3. [Log visualization UI](https://github.com/bakhirev/assayo) **(you here)** displays report. Needs a log file for work.
<a name="link-28"></a>
<a name="link-29"></a>
#### 🈯 How to add or edit a translation?
You can add a new translation or correct an existing one in the ```ts/translations/``` folder.
[Instruction](https://github.com/firstcontributions/first-contributions)
<a name="link-29"></a>
<a name="link-30"></a>
#### 🗺️ RoadMap:
Releases are planned approximately once every six months. Whats next:
- more recommendations and achievements;
@ -217,7 +223,7 @@ Releases are planned approximately once every six months. Whats next:
- file analysis;
- different roles for statistics (hiding finances);
- development of the backend, integration with other systems;
<a name="link-30"></a>
<a name="link-31"></a>
#### 📧 Feedback, comments
- telegramm [@bakhirev](https://t.me/bakhirev) (priority method of communication)
- [alexey-bakhirev@yandex.ru](mailto:alexey-bakhirev@yandex.ru)

View file

@ -36,28 +36,29 @@ Visualización y análisis de los datos de su repositorio git. ([demo](https://a
- [Cómo descargar los datos desde git?](#link-6)
- [Para la visualización en línea](#link-7)
- [Para ver sin conexión](#link-8)
- [¿Cómo ver el informe?](#link-9)
- [Online](#link-10)
- [Offline](#link-11)
- [Como recompilar el build de un informe?](#link-12)
- [Como mirar el reporte de un grupo de microservicios?](#link-13)
- [¿Cómo puedo personalizar la interfaz de usuario?](#link-14)
- [¿Cómo firmar los commits?](#link-15)
- [How to add checking for commit message?](#link-16)
- [ Use file commit-msg](#link-17)
- [ Use package pre-commit](#link-18)
- [¿Cómo automatizar el recolección de datos?](#link-19)
- [With backend](#link-20)
- [Sin backend](#link-21)
- [DevOps ](#link-22)
- [Servidor público](#link-23)
- [Servidor privado](#link-24)
- [Actualización de la imagen Docker](#link-25)
- [ About application](#link-26)
- [Architecture](#link-27)
- [Los lanzamientos son aproximadamente una vez cada seis meses. Lo siguiente será:](#link-28)
- [¿Cómo añadir o editar una traducción?](#link-29)
- [Deseos, comentarios](#link-30)
- [If you use PowerShell in Windows](#link-9)
- [¿Cómo ver el informe?](#link-10)
- [Online](#link-11)
- [Offline](#link-12)
- [Como recompilar el build de un informe?](#link-13)
- [Como mirar el reporte de un grupo de microservicios?](#link-14)
- [¿Cómo puedo personalizar la interfaz de usuario?](#link-15)
- [¿Cómo firmar los commits?](#link-16)
- [How to add checking for commit message?](#link-17)
- [ Use file commit-msg](#link-18)
- [ Use package pre-commit](#link-19)
- [¿Cómo automatizar el recolección de datos?](#link-20)
- [With backend](#link-21)
- [Sin backend](#link-22)
- [DevOps ](#link-23)
- [Servidor público](#link-24)
- [Servidor privado](#link-25)
- [Actualización de la imagen Docker](#link-26)
- [ About application](#link-27)
- [Architecture](#link-28)
- [Los lanzamientos son aproximadamente una vez cada seis meses. Lo siguiente será:](#link-29)
- [¿Cómo añadir o editar una traducción?](#link-30)
- [Deseos, comentarios](#link-31)
<a name="link-4"></a>
### 🚀 Cómo puedo rápidamente ver el número de commits?
En la carpeta raíz de su proyecto, ejecute:
@ -88,41 +89,46 @@ git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict -
```
git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%aN>%aE>%s" | sed -e 's/\\/\\\\/g' | sed -e 's/`/"/g' | sed -e 's/^/report.push(\`/g' | sed 's/$/\`\);/g' | sed 's/\$/_/g' > log.txt
```
Git creará un archivo `log.txt`.
contiene los datos para construir el informe.
La diferencia entre los formatos en línea y fuera de línea está en la existencia de una envoltura para las cadenas. El formato fuera de línea se cargará como un archivo`js` si usted simplemente lo abrió. `/build/index.html`
Git creará un archivo `log.txt`. contiene los datos para construir el informe. La diferencia entre los formatos en línea y fuera de línea está en la existencia de una envoltura para las cadenas. El formato fuera de línea se cargará como un archivo`js` si usted simplemente lo abrió. `/build/index.html`
<a name="link-9"></a>
### 📈 ¿Cómo ver el informe?
#### If you use PowerShell in Windows
By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command.
```
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
```
Or open a saved file and manually change the encoding to UTF-8.
<a name="link-10"></a>
### 📈 ¿Cómo ver el informe?
<a name="link-11"></a>
#### Online
- Ir a [sitio web](https://assayo.online/)
- Pulse el botón [Demo](https://assayo.online/demo?ref=github&lang=es
- Arrastrar y soltar archivo `log.txt` en la ventana del navegador
<a name="link-11"></a>
<a name="link-12"></a>
#### Offline
- Descargar este repositorio
- Arrastrar y soltar archivo `log.txt` en la carpeta `/build`
- Lanzar `/build/index.html`
- O arrastrar una carpeta `/build` a su repositorio (donde se encuentra ' log.txt`). Puede cambiar el nombre. Por ejemplo `/build` contra `/report`
En este caso, es importante que el archivo ' log.txt ' fue generado por el equipo para ver sin conexión.
<a name="link-12"></a>
<a name="link-13"></a>
### 🏭 Como recompilar el build de un informe?
- Descargar este repositorio
- Ejecutar `npm install`
- Ejecutar `npm run build:local`
- La nueva compilación estará en el directorio `/build`
<a name="link-13"></a>
<a name="link-14"></a>
### 🗃️ Como mirar el reporte de un grupo de microservicios?
- Generar para cada microservicio el archivo `log.txt` (`log-1.txt`, `log-2.txt`, `log-3.txt` etc.)
- Ver “Cómo ver el informe en línea?”. En el último paso, arrastrar todos los archivos al navegador.
- Ver “Cómo ver informe fuera de línea?”. En el segundo paso, arrastrar los archivos de todos los microservicios al navegador (`log-1.txt`, `log-2.txt`, `log-3.txt` etc.) la carpeta informe (`/build`).
<a name="link-14"></a>
<a name="link-15"></a>
### 🎨 ¿Cómo puedo personalizar la interfaz de usuario?
Puedes crear tu propio tema para la interfaz. Puedes cambiar:
- **El título**. Puedes especificarlo en el parámetro de la URL ```title```. Por ejemplo: ```?title=You Company```
- **El tema visual**. Para esto, debes preparar un archivo CSS con los nuevos estilos y especificar su dirección en el parámetro de URL ```theme```. Por ejemplo: ```?theme=//company.com/some.css```. Puedes usar los nombres de clases como selectores. La mayoría de ellos no cambia con el lanzamiento de nuevas versiones.
- **La lengua**. Puedes especificarla en el parámetro de la URL ```lang```. Por ejemplo: ```?lang=es```
<a name="link-15"></a>
<a name="link-16"></a>
### 📝 ¿Cómo firmar los commits?
Siga la práctica [Conventional Commits 1.0.0](https://www.conventionalcommits.org/en/v1.0.0/). Por ejemplo:
```
@ -132,9 +138,9 @@ JIRA-1234 feat(profile): Added avatar for user
- tipo de trabajo `(feat, fix, style, refactor, test, doc etc.)`
- ficha `(profile - La sección del sitio, la página o la nueva funcionalidad, en una palabra)`
- ¿qué problema resolvieron? `(Added avatar for user)`
<a name="link-16"></a>
### 👮 How to add checking for commit message?
<a name="link-17"></a>
### 👮 How to add checking for commit message?
<a name="link-18"></a>
#### Use file `commit-msg`
1. Create file `commit-msg` in folder `.git/hooks/`
2. Add this text in file:
@ -145,7 +151,7 @@ if ! grep -iqE "(JIRA-[0-9]{1,5})(\s)(feat|fix|docs|style|refactor|test|chore)((
exit 1
fi
```
<a name="link-18"></a>
<a name="link-19"></a>
#### Use package [pre-commit](https://www.npmjs.com/package/pre-commit)
1. Add in file `package.json` property `commit-msg`:
```
@ -157,12 +163,12 @@ fi
...
```
2. Run command `npm install pre-commit`
<a name="link-19"></a>
### 📚 ¿Cómo automatizar el recolección de datos?
<a name="link-20"></a>
### 📚 ¿Cómo automatizar el recolección de datos?
<a name="link-21"></a>
#### With backend
- use module [Assayo Crawler](https://github.com/bakhirev/assayo-crawler);
<a name="link-21"></a>
<a name="link-22"></a>
#### Sin backend
- clone del repositorio que desea;
- copiar a la carpeta raíz `build`;
@ -170,15 +176,15 @@ fi
- agregue un icono de `build/assets/ci-cd.sh` a su carpeta de inicio automático
(Windows);
Cada vez que reinicie su computadora, el script actualizará la estadística de todos los datos que se hayan incorporado automáticamente a la rama principal.
<a name="link-22"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-23"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-24"></a>
#### Servidor público
Puede publicar el archivo con los datos para generar el informe en una URL pública. Para visualizarlo, puede usar la interfaz web del sitio [assayo](https://assayo.online/). Simplemente indique la dirección donde están los datos en el parámetro URL ```dump```:
```
https://assayo.online/demo/?dump=//you_site.com/some/log.txt
```
<a name="link-24"></a>
<a name="link-25"></a>
#### Servidor privado
- descargar [docker образ](https://hub.docker.com/r/bakhirev/assayo);
- recogerlo en la red local;
@ -189,23 +195,23 @@ assayo_url - URL dirección del contenedor assayo, Él está escuchando el puert
you_url - URL la dirección de su contenedor con registros git;
```
Por defecto, la imagen se ejecutará en la siguiente dirección ```http://127.0.0.1:80/```. Si no funciona, compruebe si tiene el puerto 80 disponible
<a name="link-25"></a>
<a name="link-26"></a>
#### Actualización de la imagen Docker
- construir ```npm run build:docker```
- montar la imagen ```docker build -t assayo .```
- comprobar visualmente la imagen ```docker run --name assayo -p 80:80 -d assayo```;
- poner la etiqueta ```docker tag assayo bakhirev/assayo:latest```;
- poner la imagen en Docker Hub ```docker push bakhirev/assayo:latest```;
<a name="link-26"></a>
### 🛠️ About application
<a name="link-27"></a>
### 🛠️ About application
<a name="link-28"></a>
#### 📐 Architecture
<img src="https://raw.githubusercontent.com/bakhirev/assayo-crawler/12af4410fc93384cafb108a4429e43f9a874dbaa/schema.svg" width="70%" />
1. [Reports showcase UI](https://github.com/bakhirev/assayo-showcase) displays a list of available reports. Each report consists of a title, description, and a list of repositories.
2. [Crawler service](https://github.com/bakhirev/assayo-crawler) collects repository logs for the report.
3. [Log visualization UI](https://github.com/bakhirev/assayo) **(you here)** displays report. Needs a log file for work.
<a name="link-28"></a>
<a name="link-29"></a>
#### 🈯 Los lanzamientos son aproximadamente una vez cada seis meses. Lo siguiente será:
- más consejos y logros;
- resultados del año / mes, impresión de informes;
@ -213,11 +219,11 @@ Por defecto, la imagen se ejecutará en la siguiente dirección ```http://127.0.
- análisis de archivos;
- diferentes roles para estadísticas (ocultación de finanzas);
- desarrollo de la parte de atrás, integraciones con otros sistemas;
<a name="link-29"></a>
<a name="link-30"></a>
#### 🗺️ ¿Cómo añadir o editar una traducción?
Puede agregar una nueva traducción o corregir la actual en la sección ```ts/translations/```.
[Instrucciones](https://github.com/firstcontributions/first-contributions)
<a name="link-30"></a>
<a name="link-31"></a>
#### 📧 Deseos, comentarios
- telegramm [@bakhirev](https://t.me/bakhirev) (La forma preferencial de contacto)
- [alexey-bakhirev@yandex.ru](mailto:alexey-bakhirev@yandex.ru)

View file

@ -36,28 +36,29 @@ Visualisation et analyse des données de votre dépôt Git ([demo](https://assay
- [Comment télécharger des données depuis git ?](#link-6)
- [Pour une visualisation en ligne](#link-7)
- [Pour la navigation hors ligne](#link-8)
- [Comment voir le rapport en ligne?](#link-9)
- [Online](#link-10)
- [Offline](#link-11)
- [Comment recompiler la build du rapport?](#link-12)
- [Comment voir le compte rendu pour un groupe de microservices?](#link-13)
- [Comment apposer une marque sur linterface?](#link-14)
- [Comment signer les commits ?](#link-15)
- [How to add checking for commit message?](#link-16)
- [ Use file commit-msg](#link-17)
- [ Use package pre-commit](#link-18)
- [Comment automatiser la collecte de données?](#link-19)
- [With backend](#link-20)
- [Sans back-end](#link-21)
- [DevOps ](#link-22)
- [Serveur public](#link-23)
- [Serveur privé](#link-24)
- [Mise à jour de limage-Docker](#link-25)
- [ About application](#link-26)
- [Architecture](#link-27)
- [Les versions sont publiées environ tous les six mois. Quoi de neuf:](#link-28)
- [Comment ajouter ou modifier une traduction?](#link-29)
- [Souhaits, suggestions, commentaires](#link-30)
- [If you use PowerShell in Windows](#link-9)
- [Comment voir le rapport en ligne?](#link-10)
- [Online](#link-11)
- [Offline](#link-12)
- [Comment recompiler la build du rapport?](#link-13)
- [Comment voir le compte rendu pour un groupe de microservices?](#link-14)
- [Comment apposer une marque sur linterface?](#link-15)
- [Comment signer les commits ?](#link-16)
- [How to add checking for commit message?](#link-17)
- [ Use file commit-msg](#link-18)
- [ Use package pre-commit](#link-19)
- [Comment automatiser la collecte de données?](#link-20)
- [With backend](#link-21)
- [Sans back-end](#link-22)
- [DevOps ](#link-23)
- [Serveur public](#link-24)
- [Serveur privé](#link-25)
- [Mise à jour de limage-Docker](#link-26)
- [ About application](#link-27)
- [Architecture](#link-28)
- [Les versions sont publiées environ tous les six mois. Quoi de neuf:](#link-29)
- [Comment ajouter ou modifier une traduction?](#link-30)
- [Souhaits, suggestions, commentaires](#link-31)
<a name="link-4"></a>
### 🚀 De combien de commits avez-vous besoin?
Dans le répertoire racine de votre projet, exécutez les commandes suivantes:
@ -88,40 +89,45 @@ git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict -
```
git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%aN>%aE>%s" | sed -e 's/\\/\\\\/g' | sed -e 's/`/"/g' | sed -e 's/^/report.push(\`/g' | sed 's/$/\`\);/g' | sed 's/\$/_/g' > log.txt
```
Git va créer le fichier `log.txt`.
Son contenu est destiné à la création de rapports.
La différence entre le format en ligne et le format hors ligne réside dans lenveloppe des lignes. Le format hors ligne sera chargé comme un fichier js si vous avez simplement ouvert `/build/index.html`
Git va créer le fichier `log.txt`. Son contenu est destiné à la création de rapports. La différence entre le format en ligne et le format hors ligne réside dans lenveloppe des lignes. Le format hors ligne sera chargé comme un fichier js si vous avez simplement ouvert `/build/index.html`
<a name="link-9"></a>
### 📈 Comment voir le rapport en ligne?
#### If you use PowerShell in Windows
By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command.
```
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
```
Or open a saved file and manually change the encoding to UTF-8.
<a name="link-10"></a>
### 📈 Comment voir le rapport en ligne?
<a name="link-11"></a>
#### Online
- Aller à [сайт](https://assayo.online/)
- Appuyer sur le bouton “[Démo](https://assayo.online/demo?ref=github&lang=fr)”
- Faites glisser le fichier `log.txt` dans la fenêtre du navigateur
<a name="link-11"></a>
<a name="link-12"></a>
#### Offline
- Télécharger ce dépôt
- Glisser le fichier `log.txt` dans le dossier `/build`
- Démarrer `/build/index.html`
- Ou coller le dossier `/build` Sur votre dépôt (là où se trouve `log.txt`). Vous pouvez changer le nom. Par exemple avec `/build` sur `/report`. Dans cette cas, il est important que le fichier log.txt ait été généré par le commande pour la visualisation hors ligne.
<a name="link-12"></a>
<a name="link-13"></a>
### 🏭 Comment recompiler la build du rapport?
- Télécharger ce dépôt
- Exécuter `npm install`
- Exécuter `npm run build:local`
- La dernière build sera dans le dossier `/build`
<a name="link-13"></a>
<a name="link-14"></a>
### 🗃️ Comment voir le compte rendu pour un groupe de microservices?
- générer un fichier pour chaque microservice `log.txt` (`log-1.txt`, `log-2.txt`, `log-3.txt` etc.)
- Voir “Comment voir le rapport en ligne?”. Au dernier pas, glisser tous les fichiers dans la fenêtre du navigateur.
- Voir “Comment regarder le rapport hors-ligne?”. Au deuxième pas, coller tous les fichier de microservices (`log-1.txt`, `log-2.txt`, `log-3.txt` etc.) dans le dossier du rapport (`/build`).
<a name="link-14"></a>
<a name="link-15"></a>
### 🎨 Comment apposer une marque sur linterface?
Vous pouvez écrire votre propre thème pour linterface. Vous pouvez changer :
- **En-tête**. Vous pouvez le spécifier dans le paramètre de lURL ```title```. Par exemple: ```?title=You Company```
- **Thème visuel**.Pour cela, vous devez préparer un fichier CSS avec de nouveaux styles et indiquer son adresse dans le paramètre de lURL ```theme```. Par exemple: ```?theme=//company.com/some.css```. Vous pouvez utiliser les noms de classes comme sélecteurs. La plupart dentre elles ne changent pas lors de la sortie de nouvelles versions.
- **Langue**. Vous pouvez lindiquer dans le paramètre dURL ```lang```. Par exemple: ```?lang=es```
<a name="link-15"></a>
<a name="link-16"></a>
### 📝 Comment signer les commits ?
Suivez la pratique [Conventional Commits 1.0.0](https://www.conventionalcommits.org/en/v1.0.0/). Par exemple:
```
@ -131,9 +137,9 @@ JIRA-1234 feat(profile): Added avatar for user
- type de travail `(feat, fix, style, refactor, test, doc etc.)`
- ficha `(profile - la section du site, la page ou la nouvelle fonctionnalité, en un mot)`
- quel problème ont-ils résolu `(Added avatar for user)`
<a name="link-16"></a>
### 👮 How to add checking for commit message?
<a name="link-17"></a>
### 👮 How to add checking for commit message?
<a name="link-18"></a>
#### Use file `commit-msg`
1. Create file `commit-msg` in folder `.git/hooks/`
2. Add this text in file:
@ -144,7 +150,7 @@ if ! grep -iqE "(JIRA-[0-9]{1,5})(\s)(feat|fix|docs|style|refactor|test|chore)((
exit 1
fi
```
<a name="link-18"></a>
<a name="link-19"></a>
#### Use package [pre-commit](https://www.npmjs.com/package/pre-commit)
1. Add in file `package.json` property `commit-msg`:
```
@ -156,26 +162,26 @@ fi
...
```
2. Run command `npm install pre-commit`
<a name="link-19"></a>
### 📚 Comment automatiser la collecte de données?
<a name="link-20"></a>
### 📚 Comment automatiser la collecte de données?
<a name="link-21"></a>
#### With backend
- use module [Assayo Crawler](https://github.com/bakhirev/assayo-crawler);
<a name="link-21"></a>
<a name="link-22"></a>
#### Sans back-end
- clonez le dépôt que vous voulez ;
- copiez le dossier `build`;
- Ouvrez `build/index.html` dans le navigateur et ajoutez-le aux favoris;
- ajoutez un raccourci sur `build/assets/ci-cd.sh` dans le dossier de démarrage automatique (Windows); Chaque fois que votre ordinateur se recharge, le script mettra à jour les statistiques sur toutes les données qui se sont automatiquement insérées dans la branche principale.
<a name="link-22"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-23"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-24"></a>
#### Serveur public
Vous pouvez mettre à disposition le fichier avec les données pour construire le rapport sur lURL publique. Et pour sa visualisation, utiliser linterface web du site. [assayo](https://assayo.online/). Tout simplement, indiquez ladresse où se trouvent les données dans le paramètre de lURL ```dump```:
```
https://assayo.online/demo/?dump=//you_site.com/some/log.txt
```
<a name="link-24"></a>
<a name="link-25"></a>
#### Serveur privé
- télécharger [docker образ](https://hub.docker.com/r/bakhirev/assayo);
- Soulevez-le sur le réseau local;
@ -186,23 +192,23 @@ assayo_url - URL Conteneur assayo, écoute le port 80;
you_url - URL адресс Adresse de votre conteneur de logs git;
```
Par défaut, l'image s'exécute à ```http://127.0.0.1:80/```. Si cela ne fonctionne pas, vérifiez si le port 80 est disponible.
<a name="link-25"></a>
<a name="link-26"></a>
#### Mise à jour de limage-Docker
- constuire la build ```npm run build:docker```
- assembler l'image ```docker build -t assayo .```
- vérifier visuellement l'image ```docker run --name assayo -p 80:80 -d assayo```;
- mettre la balise ```docker tag assayo bakhirev/assayo:latest```;
- Envoyer le code au référentiel d'images dans Docker Hub ```docker push bakhirev/assayo:latest```;
<a name="link-26"></a>
### 🛠️ About application
<a name="link-27"></a>
### 🛠️ About application
<a name="link-28"></a>
#### 📐 Architecture
<img src="https://raw.githubusercontent.com/bakhirev/assayo-crawler/12af4410fc93384cafb108a4429e43f9a874dbaa/schema.svg" width="70%" />
1. [Reports showcase UI](https://github.com/bakhirev/assayo-showcase) displays a list of available reports. Each report consists of a title, description, and a list of repositories.
2. [Crawler service](https://github.com/bakhirev/assayo-crawler) collects repository logs for the report.
3. [Log visualization UI](https://github.com/bakhirev/assayo) **(you here)** displays report. Needs a log file for work.
<a name="link-28"></a>
<a name="link-29"></a>
#### 🈯 Les versions sont publiées environ tous les six mois. Quoi de neuf:
- plus de conseils et de succès;
- résultats de lannée / du mois, impression des rapports;
@ -210,11 +216,11 @@ Par défaut, l'image s'exécute à ```http://127.0.0.1:80/```. Si cela ne foncti
- analyse des fichiers;
- différents rôles pour la statistique (cacher la finance);
- développement du backend, intégrations avec dautres systèmes;
<a name="link-29"></a>
<a name="link-30"></a>
#### 🗺️ Comment ajouter ou modifier une traduction?
Vous pouvez ajouter une nouvelle traduction ou corriger la traduction existante dans le section ```ts/translations/```.
[Instruction](https://github.com/firstcontributions/first-contributions)
<a name="link-30"></a>
<a name="link-31"></a>
#### 📧 Souhaits, suggestions, commentaires
- telegramm [@bakhirev](https://t.me/bakhirev) (voie de communication prioritaire)
- [alexey-bakhirev@yandex.ru](mailto:alexey-bakhirev@yandex.ru)

View file

@ -36,28 +36,29 @@
- [Gitからデータをダウンロードするにはどうすればよろしいでしょうか。](#link-6)
- [Дオンラインで見るため](#link-7)
- [インターネットなしで見るために](#link-8)
- [レポートを表示するにはどうすればよいですか? ](#link-9)
- [Online](#link-10)
- [Offline](#link-11)
- [レポートファイルを再構成する方法は?](#link-12)
- [マイクロサービス群のレポートを表示するにはどうすればよいでしょうか。](#link-13)
- [自社のブランドカラーでインターフェースをリニュアルカラーに変えるにはどうすればよろしいでしょうか。](#link-14)
- [commit文の署名方法は](#link-15)
- [How to add checking for commit message?](#link-16)
- [ Use file commit-msg](#link-17)
- [ Use package pre-commit](#link-18)
- [データの自動収集方法は?](#link-19)
- [With backend](#link-20)
- [バックエンドなし](#link-21)
- [DevOps ](#link-22)
- [公開サーバ](#link-23)
- [プライベートサーバー](#link-24)
- [Dockerイメージの更新](#link-25)
- [ About application](#link-26)
- [Architecture](#link-27)
- [半年ごとにリリースを行います。次は何でしょうか。](#link-28)
- [翻訳を追加または編集するにはどうすればいいでしょうか。](#link-29)
- [願い、提案、コメント](#link-30)
- [If you use PowerShell in Windows](#link-9)
- [レポートを表示するにはどうすればよいですか? ](#link-10)
- [Online](#link-11)
- [Offline](#link-12)
- [レポートファイルを再構成する方法は?](#link-13)
- [マイクロサービス群のレポートを表示するにはどうすればよいでしょうか。](#link-14)
- [自社のブランドカラーでインターフェースをリニュアルカラーに変えるにはどうすればよろしいでしょうか。](#link-15)
- [commit文の署名方法は](#link-16)
- [How to add checking for commit message?](#link-17)
- [ Use file commit-msg](#link-18)
- [ Use package pre-commit](#link-19)
- [データの自動収集方法は?](#link-20)
- [With backend](#link-21)
- [バックエンドなし](#link-22)
- [DevOps ](#link-23)
- [公開サーバ](#link-24)
- [プライベートサーバー](#link-25)
- [Dockerイメージの更新](#link-26)
- [ About application](#link-27)
- [Architecture](#link-28)
- [半年ごとにリリースを行います。次は何でしょうか。](#link-29)
- [翻訳を追加または編集するにはどうすればいいでしょうか。](#link-30)
- [願い、提案、コメント](#link-31)
<a name="link-4"></a>
### 🚀 コミット数を素早く確認するにはどうすればよいでしょうか。
プロジェクトのルートディレクトリで以下のコマンドを実行します:
@ -88,41 +89,46 @@ git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict -
```
git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%aN>%aE>%s" | sed -e 's/\\/\\\\/g' | sed -e 's/`/"/g' | sed -e 's/^/report.push(\`/g' | sed 's/$/\`\);/g' | sed 's/\$/_/g' > log.txt
```
Gitはファイルを作成します `log.txt`.
このファイルには、レポートを構築するためのデータが含まれています。
インターネットのない形式とインターネットのある形式は、文字列が埋め込まれているという点で異なります。インターネットを持たない形式でファイルを開くと、単に「js」ファイルとして読み込まれます。 `/build/index.html`
Gitはファイルを作成します `log.txt`. このファイルには、レポートを構築するためのデータが含まれています。 インターネットのない形式とインターネットのある形式は、文字列が埋め込まれているという点で異なります。インターネットを持たない形式でファイルを開くと、単に「js」ファイルとして読み込まれます。 `/build/index.html`
<a name="link-9"></a>
### 📈 レポートを表示するにはどうすればよいですか?
#### If you use PowerShell in Windows
By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command.
```
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
```
Or open a saved file and manually change the encoding to UTF-8.
<a name="link-10"></a>
### 📈 レポートを表示するにはどうすればよいですか?
<a name="link-11"></a>
#### Online
- に切り替える [ウェブサイト](https://assayo.online/)
- ボタンを押す “[デモ](https://assayo.online/demo?lang=ru)”
- ファイルをドラッグ&ドロップする `log.txt` ブラウザウィンドウで
<a name="link-11"></a>
<a name="link-12"></a>
#### Offline
- このリポジトリをダウンロードする
- ファイルをドラッグ&ドロップする `log.txt` フォルダへ `/build`
- 実行するには `/build/index.html`
- フォルダをドラッグして下さい `/build` 自分のリポジトリーにフォルダを置いてください (それがある場所 `log.txt`). 名前を変更することができます。例えば名前 `/build``/report`
重要なのは、ファイル `log.txt` インターネットが利用できない環境で、レポートを表示するために作成されたコマンドである必要があります。
<a name="link-12"></a>
<a name="link-13"></a>
### 🏭 レポートファイルを再構成する方法は?
- このリポジトリをダウンロードしてください
- 実行するには `npm install`
- 実行するには `npm run build:local`
- 最新のビルドは、フォルダに含まれるでしょう `/build`
<a name="link-13"></a>
<a name="link-14"></a>
### 🗃️ マイクロサービス群のレポートを表示するにはどうすればよいでしょうか。
- マイクロサービスごとにファイルを作成します。 `log.txt` (`log-1.txt`, `log-2.txt`, `log-3.txt` など。)
- "インターネット上でレポートを見る方法"を参照してください。最後の手順では、すべてのファイルをブラウザのウィンドウに一度にドラッグ&ドロップします。
- “インターネットなしでレポートを見る方法” を参照してください。第二段階では、マイクロサービスのすべてのファイルをドラッグしてドロップする必要があります。(`log-1.txt`, `log-2.txt`, `log-3.txt` など。) レポートフォルダへ (`/build`).
<a name="link-14"></a>
<a name="link-15"></a>
### 🎨 自社のブランドカラーでインターフェースをリニュアルカラーに変えるにはどうすればよろしいでしょうか。
インターフェースのテーマを独自に作成することができます。下記の項目は変更できます。
- **見出し**. それはURLパラメータで指定することができます ```title```. 例えば: ```?title=You Company```
- **CSS スタイル**. そのためにはCSSファイルを用意し、そのアドレスをURLパラメーターに指定する必要があります ```theme```. 例えば: ```?theme=//company.com/some.css```. クラス名をセレクターとして使用することができます。ほとんどの場合、新しいバージョンがリリースされると変更されません
- **言語**. URLパラメータに指定することができます ```lang```. 例えば: ```?lang=es```
<a name="link-15"></a>
<a name="link-16"></a>
### 📝 commit文の署名方法は
練習に従ってください [Conventional Commits 1.0.0](https://www.conventionalcommits.org/en/v1.0.0/). 例えば:
```
@ -132,9 +138,9 @@ JIRA-1234 feat(profile): Added avatar for user
- 仕事の種類 `(feat, fix, style, refactor, test, doc など。)`
- 仕事の分野 `(profile - サイトのセクション、ページ、新機能、簡単に)`
- ジョブの説明 `(Added avatar for user)`
<a name="link-16"></a>
### 👮 How to add checking for commit message?
<a name="link-17"></a>
### 👮 How to add checking for commit message?
<a name="link-18"></a>
#### Use file `commit-msg`
1. Create file `commit-msg` in folder `.git/hooks/`
2. Add this text in file:
@ -145,7 +151,7 @@ if ! grep -iqE "(JIRA-[0-9]{1,5})(\s)(feat|fix|docs|style|refactor|test|chore)((
exit 1
fi
```
<a name="link-18"></a>
<a name="link-19"></a>
#### Use package [pre-commit](https://www.npmjs.com/package/pre-commit)
1. Add in file `package.json` property `commit-msg`:
```
@ -157,27 +163,27 @@ fi
...
```
2. Run command `npm install pre-commit`
<a name="link-19"></a>
### 📚 データの自動収集方法は?
<a name="link-20"></a>
### 📚 データの自動収集方法は?
<a name="link-21"></a>
#### With backend
- use module [Assayo Crawler](https://github.com/bakhirev/assayo-crawler);
<a name="link-21"></a>
<a name="link-22"></a>
#### バックエンドなし
- リポジトリのクローンを作成します。;
- フォルダをコピーする `build` 現在のリポジトリから;
- オープン `build/index.html` ブラウザでブックマークに追加します。;
- にショートカットを追加する `build/assets/ci-cd.sh` 自動起動フォルダーに (Windows);
コンピューターを再起動するとき、スクリプトはメインブランチに自動的に挿入されたすべてのデータについての統計を更新します。
<a name="link-22"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-23"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-24"></a>
#### 公開サーバ
データをレポートビルド用に公開するファイルをURLで公開することができます。その視覚化は、サイト上で利用可能なツールを使用することで行うことができます。 [assayo](https://assayo.online/). データがある場所のアドレスを、URLパラメータに入力してください。 ```dump```:
```
https://assayo.online/demo/?dump=//you_site.com/some/log.txt
```
<a name="link-24"></a>
<a name="link-25"></a>
#### プライベートサーバー
- ダウンロード [dockerイメージ](https://hub.docker.com/r/bakhirev/assayo);
- ローカルネットワーク内で実行します。;
@ -188,30 +194,30 @@ assayo_url - ポート80でリッスンしているassayoコンテナのURL;
you_url - gitのログのコンテナーのURLアドレス;
```
デフォルトではイメージは以下のアドレスで起動します ```http://127.0.0.1:80/```. 問題が解決しない場合は、ポート80が開いているか確認してみてください。
<a name="link-25"></a>
<a name="link-26"></a>
#### Dockerイメージの更新
- 次のコマンドを実行します ```npm run build:docker```
- 次のコマンドを実行します ```docker build -t assayo .```
- 結果を確認する ```docker run --name assayo -p 80:80 -d assayo```;
- 次のコマンドを実行します ```docker tag assayo bakhirev/assayo:latest```;
- コンテナイメージをDocker Hubにアップロードする ```docker push bakhirev/assayo:latest```;
<a name="link-26"></a>
### 🛠️ About application
<a name="link-27"></a>
### 🛠️ About application
<a name="link-28"></a>
#### 📐 Architecture
<img src="https://raw.githubusercontent.com/bakhirev/assayo-crawler/12af4410fc93384cafb108a4429e43f9a874dbaa/schema.svg" width="70%" />
1. [Reports showcase UI](https://github.com/bakhirev/assayo-showcase) displays a list of available reports. Each report consists of a title, description, and a list of repositories.
2. [Crawler service](https://github.com/bakhirev/assayo-crawler) collects repository logs for the report.
3. [Log visualization UI](https://github.com/bakhirev/assayo) **(you here)** displays report. Needs a log file for work.
<a name="link-28"></a>
<a name="link-29"></a>
#### 🈯 半年ごとにリリースを行います。次は何でしょうか。
見て! [主なドキュメント](https://github.com/bakhirev/assayo/blob/main/documents/RU.md)
<a name="link-29"></a>
<a name="link-30"></a>
#### 🗺️ 翻訳を追加または編集するにはどうすればいいでしょうか。
新しい翻訳を追加するか、現在の翻訳を修正するために、以下のセクションでそれを行うことができます: ```ts/translations/```.
[取扱説明書](https://github.com/firstcontributions/first-contributions)
<a name="link-30"></a>
<a name="link-31"></a>
#### 📧 願い、提案、コメント
- telegramm [@bakhirev](https://t.me/bakhirev) (優先通信方式)
- [alexey-bakhirev@yandex.ru](mailto:alexey-bakhirev@yandex.ru)

View file

@ -36,28 +36,29 @@ Visualização e análise de dados do seu repositório git ([demonstração](htt
- [Como exportar dados do git? ](#link-6)
- [Para visualização online](#link-7)
- [Para ver sem internet](#link-8)
- [Como ver o relatório?](#link-9)
- [Online](#link-10)
- [Offline](#link-11)
- [Como recompilar o arquivo do relatório?](#link-12)
- [Como visualizar o relatório do grupo de microserviços?](#link-13)
- [Como alterar as cores da interface para as cores da sua marca?](#link-14)
- [Como faço para assinar commits?](#link-15)
- [How to add checking for commit message?](#link-16)
- [ Use file commit-msg](#link-17)
- [ Use package pre-commit](#link-18)
- [Como automatizar a coleta de dados?](#link-19)
- [With backend](#link-20)
- [Sem backend](#link-21)
- [DevOps ](#link-22)
- [Servidor Público](#link-23)
- [Servidor Privado](#link-24)
- [Atualizar a imagem Docker](#link-25)
- [ About application](#link-26)
- [Architecture](#link-27)
- [Liberações, aproximadamente, uma vez por semestre. O que vem a seguir:](#link-28)
- [Como adicionar ou editar uma tradução?](#link-29)
- [Sugestões, sugestões, comentários](#link-30)
- [If you use PowerShell in Windows](#link-9)
- [Como ver o relatório?](#link-10)
- [Online](#link-11)
- [Offline](#link-12)
- [Como recompilar o arquivo do relatório?](#link-13)
- [Como visualizar o relatório do grupo de microserviços?](#link-14)
- [Como alterar as cores da interface para as cores da sua marca?](#link-15)
- [Como faço para assinar commits?](#link-16)
- [How to add checking for commit message?](#link-17)
- [ Use file commit-msg](#link-18)
- [ Use package pre-commit](#link-19)
- [Como automatizar a coleta de dados?](#link-20)
- [With backend](#link-21)
- [Sem backend](#link-22)
- [DevOps ](#link-23)
- [Servidor Público](#link-24)
- [Servidor Privado](#link-25)
- [Atualizar a imagem Docker](#link-26)
- [ About application](#link-27)
- [Architecture](#link-28)
- [Liberações, aproximadamente, uma vez por semestre. O que vem a seguir:](#link-29)
- [Como adicionar ou editar uma tradução?](#link-30)
- [Sugestões, sugestões, comentários](#link-31)
<a name="link-4"></a>
### 🚀 Como é rápido ver o número de commits?
No diretório raiz do seu projeto, execute o comando:
@ -88,41 +89,46 @@ git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict -
```
git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%aN>%aE>%s" | sed -e 's/\\/\\\\/g' | sed -e 's/`/"/g' | sed -e 's/^/report.push(\`/g' | sed 's/$/\`\);/g' | sed 's/\$/_/g' > log.txt
```
Git criar um ficheiro `log.txt`.
Esse arquivo contém dados para construção de relatórios.
A diferença entre os formatos está na existência de uma envoltória para as linhas. O formato sem internet será puxado como `js` o arquivo se você o abriu simplesmente `/build/index.html`
Git criar um ficheiro `log.txt`. Esse arquivo contém dados para construção de relatórios. A diferença entre os formatos está na existência de uma envoltória para as linhas. O formato sem internet será puxado como `js` o arquivo se você o abriu simplesmente `/build/index.html`
<a name="link-9"></a>
### 📈 Como ver o relatório?
#### If you use PowerShell in Windows
By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command.
```
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
```
Or open a saved file and manually change the encoding to UTF-8.
<a name="link-10"></a>
### 📈 Como ver o relatório?
<a name="link-11"></a>
#### Online
- Ir para [site](https://assayo.online/)
- Pressione o botão “[Demonstração](https://assayo.online/demo?lang=ru)”
- Arrastar e largar `log.txt` na janela do navegador
<a name="link-11"></a>
<a name="link-12"></a>
#### Offline
- Baixar este repositório
- Arraste o arquivo `log.txt` para a pasta `/build`
- Lançar `/build/index.html`
- Ou arraste a pasta `/build` ir para o repositório (o lugar onde se encontra `log.txt`). Você pode mudar o nome. Por exemplo, do nome `/build` no título `/report`
É importante que o arquivo `log.txt` foi criado por uma equipe para navegar sem internet.
<a name="link-12"></a>
<a name="link-13"></a>
### 🏭 Como recompilar o arquivo do relatório?
- Baixar este repositório
- Executar `npm install`
- Executar `npm run build:local`
- A compilação mais recente estará na pasta `/build`
<a name="link-13"></a>
<a name="link-14"></a>
### 🗃️ Como visualizar o relatório do grupo de microserviços?
- Gerar um arquivo para cada microserviço `log.txt` (`log-1.txt`, `log-2.txt`, `log-3.txt` etc.)
- Veja “Como visualizar o relatório com a internet?”. No último passo, arraste todos os arquivos para a janela do navegador.
- Veja “Como visualizar o relatório sem a internet?”. No segundo passo, arraste todos os microserviços (`log-1.txt`, `log-2.txt`, `log-3.txt` etc.) na pasta relatório (`/build`).
<a name="link-14"></a>
<a name="link-15"></a>
### 🎨 Como alterar as cores da interface para as cores da sua marca?
Você pode escrever seu próprio tema de interface. Pode mudar:
- **Cabeçalho**. Você pode especificar em um parâmetro da URL ```title```. Por exemplo: ```?title=You Company```
- **CSS стили**. Para fazer isso, você precisa preparar um arquivo CSS e especificar o seu endereço no parâmetro da URL ```theme```. Por exemplo: ```?theme=//company.com/some.css```. Você pode usar os nomes das classes como seletores. A maioria deles não muda na saída de uma nova versão.
- **Idioma**. Você pode incluir em um parâmetro de URL. ```lang```. Por exemplo: ```?lang=es```
<a name="link-15"></a>
<a name="link-16"></a>
### 📝 Como faço para assinar commits?
Siga a prática [Conventional Commits 1.0.0](https://www.conventionalcommits.org/en/v1.0.0/). Por exemplo:
```
@ -132,9 +138,9 @@ JIRA-1234 feat(profile): Added avatar for user
- tipo de trabalho `(feat, fix, style, refactor, test, doc etc.)`
- área de trabalho `(profile - Página)`
- descrição do trabalho `(Added avatar for user)`
<a name="link-16"></a>
### 👮 How to add checking for commit message?
<a name="link-17"></a>
### 👮 How to add checking for commit message?
<a name="link-18"></a>
#### Use file `commit-msg`
1. Create file `commit-msg` in folder `.git/hooks/`
2. Add this text in file:
@ -145,7 +151,7 @@ if ! grep -iqE "(JIRA-[0-9]{1,5})(\s)(feat|fix|docs|style|refactor|test|chore)((
exit 1
fi
```
<a name="link-18"></a>
<a name="link-19"></a>
#### Use package [pre-commit](https://www.npmjs.com/package/pre-commit)
1. Add in file `package.json` property `commit-msg`:
```
@ -157,27 +163,27 @@ fi
...
```
2. Run command `npm install pre-commit`
<a name="link-19"></a>
### 📚 Como automatizar a coleta de dados?
<a name="link-20"></a>
### 📚 Como automatizar a coleta de dados?
<a name="link-21"></a>
#### With backend
- use module [Assayo Crawler](https://github.com/bakhirev/assayo-crawler);
<a name="link-21"></a>
<a name="link-22"></a>
#### Sem backend
- criar um clone do seu repositório;
- copie a pasta `build` do repositório atual;
- abrir `build/index.html` no navegador e adicionar aos favoritos;
- adicionar um shortcut na `build/assets/ci-cd.sh` na pasta de inicialização (Windows);
A cada reinício do computador, o script atualiza a estatística com todos os dados que sejam automaticamente incorporados na branch principal.
<a name="link-22"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-23"></a>
### 🛠️ DevOps (CI/CD)
<a name="link-24"></a>
#### Servidor Público
Você pode disponibilizar o arquivo com os dados para construção do relatório em um URL público. Para visualizá-lo, você pode usar um site [assayo](https://assayo.online/). Especifique o endereço onde os dados estão localizados no parâmetro de URL ```dump```:
```
https://assayo.online/demo/?dump=//you_site.com/some/log.txt
```
<a name="link-24"></a>
<a name="link-25"></a>
#### Servidor Privado
- baixar [docker imagem](https://hub.docker.com/r/bakhirev/assayo);
- execute-o na rede local;
@ -188,30 +194,30 @@ assayo_url - O URL do endereço do container Assay, ele está escutando na porta
you_url - O URL do seu container com os logs do git;
```
Por padrão, a imagem será iniciada no endereço ```http://127.0.0.1:80/```. Se você não conseguiu, verifique se a porta 80 está disponível no seu computador.
<a name="link-25"></a>
<a name="link-26"></a>
#### Atualizar a imagem Docker
- executar um comando ```npm run build:docker```
- executar um comando ```docker build -t assayo .```
- verificar o resultado ```docker run --name assayo -p 80:80 -d assayo```;
- executar um comando ```docker tag assayo bakhirev/assayo:latest```;
- enviar a imagem do container para o Docker Hub ```docker push bakhirev/assayo:latest```;
<a name="link-26"></a>
### 🛠️ About application
<a name="link-27"></a>
### 🛠️ About application
<a name="link-28"></a>
#### 📐 Architecture
<img src="https://raw.githubusercontent.com/bakhirev/assayo-crawler/12af4410fc93384cafb108a4429e43f9a874dbaa/schema.svg" width="70%" />
1. [Reports showcase UI](https://github.com/bakhirev/assayo-showcase) displays a list of available reports. Each report consists of a title, description, and a list of repositories.
2. [Crawler service](https://github.com/bakhirev/assayo-crawler) collects repository logs for the report.
3. [Log visualization UI](https://github.com/bakhirev/assayo) **(you here)** displays report. Needs a log file for work.
<a name="link-28"></a>
<a name="link-29"></a>
#### 🈯 Liberações, aproximadamente, uma vez por semestre. O que vem a seguir:
Vide [documentação básica](https://github.com/bakhirev/assayo/blob/main/documents/RU.md)
<a name="link-29"></a>
<a name="link-30"></a>
#### 🗺️ Como adicionar ou editar uma tradução?
Você pode adicionar uma nova tradução ou corrigir uma existente na seção ```ts/translations/```.
[Instrução](https://github.com/firstcontributions/first-contributions)
<a name="link-30"></a>
<a name="link-31"></a>
#### 📧 Sugestões, sugestões, comentários
- telegramm [@bakhirev](https://t.me/bakhirev) (método de comunicação prioritário)
- [alexey-bakhirev@yandex.ru](mailto:alexey-bakhirev@yandex.ru)

File diff suppressed because one or more lines are too long

View file

@ -36,27 +36,28 @@
- [如何从 git 导出数据?](#link-6)
- [供网上浏览](#link-7)
- [在没有互联网的情况下观看](#link-8)
- [如何在线查看报告?](#link-9)
- [如何在没有网络环境下查看报告?](#link-10)
- [如何重打包报告文件?](#link-11)
- [如何查看微服务组的报告?](#link-12)
- [如何将界面重新配色为公司专有颜色?](#link-13)
- [如何签署提交?](#link-14)
- [How to add checking for commit message?](#link-15)
- [ Use file commit-msg](#link-16)
- [ Use package pre-commit](#link-17)
- [如何自动化数据采集?](#link-18)
- [With backend](#link-19)
- [没有后端](#link-20)
- [DevOps ](#link-21)
- [公共服务器](#link-22)
- [专用服务器](#link-23)
- [Docker 图像更新](#link-24)
- [ About application](#link-25)
- [Architecture](#link-26)
- [释出版本大约每半年一次。接下来发生什么情况:](#link-27)
- [如何添加或编辑翻译?](#link-28)
- [愿望,建议,意见](#link-29)
- [If you use PowerShell in Windows](#link-9)
- [如何在线查看报告?](#link-10)
- [如何在没有网络环境下查看报告?](#link-11)
- [如何重打包报告文件?](#link-12)
- [如何查看微服务组的报告?](#link-13)
- [如何将界面重新配色为公司专有颜色?](#link-14)
- [如何签署提交?](#link-15)
- [How to add checking for commit message?](#link-16)
- [ Use file commit-msg](#link-17)
- [ Use package pre-commit](#link-18)
- [如何自动化数据采集?](#link-19)
- [With backend](#link-20)
- [没有后端](#link-21)
- [DevOps ](#link-22)
- [公共服务器](#link-23)
- [专用服务器](#link-24)
- [Docker 图像更新](#link-25)
- [ About application](#link-26)
- [Architecture](#link-27)
- [释出版本大约每半年一次。接下来发生什么情况:](#link-28)
- [如何添加或编辑翻译?](#link-29)
- [愿望,建议,意见](#link-30)
<a name="link-4"></a>
### 🚀 如何 quickly 查阅 commit 的 次数?
在项目的根目录中执行以下命令:
@ -87,39 +88,44 @@ git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict -
```
git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%aN>%aE>%s" | sed -e 's/\\/\\\\/g' | sed -e 's/`/"/g' | sed -e 's/^/report.push(\`/g' | sed 's/$/\`\);/g' | sed 's/\$/_/g' > log.txt
```
Git会创建一个文件 `log.txt`.
这个文件包含了构建报告的数据。
字符串格式的区别在于它们具有的包装。无网络格式将会像您只是简单地打开了js文件一样被加载。 `/build/index.html`
Git会创建一个文件 `log.txt`. 这个文件包含了构建报告的数据。 字符串格式的区别在于它们具有的包装。无网络格式将会像您只是简单地打开了js文件一样被加载。 `/build/index.html`
<a name="link-9"></a>
#### If you use PowerShell in Windows
By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command.
```
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
```
Or open a saved file and manually change the encoding to UTF-8.
<a name="link-10"></a>
### 📈 如何在线查看报告?
- 切换到 [网站](https://assayo.online/)
- 按下按钮 “[示范](https://assayo.online/demo?lang=ru)”
- 拖放文件 `log.txt` 在浏览器窗口中
<a name="link-10"></a>
<a name="link-11"></a>
### 如何在没有网络环境下查看报告?
- 下载这个存储库
- 拖放文件 `log.txt` 到文件夹 `/build`
- 要运行 `/build/index.html`
- 或是拖放文件夹 `/build` 到我的仓库 (它所在的地方 `log.txt`). 可以改变名称。比如,从名称 `/build` 到名称 `/report`
重要的事情是必须让log.txt这个文件是通过命令创建出来的这样它就可以在没有网的时候查看了。
<a name="link-11"></a>
<a name="link-12"></a>
### 如何重打包报告文件?
- 下载这个储存库
- 要执行 `npm install`
- 要执行 `npm run build:local`
- 最新的构建将在文件夹 `/build`
<a name="link-12"></a>
<a name="link-13"></a>
### 🏭 如何查看微服务组的报告?
- 为每个微服务生成文件 `log.txt` (`log-1.txt`, `log-2.txt`, `log-3.txt` 等等)
- 参见“如何在有网络环境下查看报告”。在最后一步,将所有文件同时拖入浏览器窗口。
- 参见“如何在没有网络环境下查看报告”。第二步将所有微服务文件拖动到 (`log-1.txt`, `log-2.txt`, `log-3.txt` 等等) 到报表文件夹 (`/build`).
<a name="link-13"></a>
<a name="link-14"></a>
### 🗃️ 如何将界面重新配色为公司专有颜色?
您可以为界面创建自己的主题。可以修改:
- **标题**. 你可以在网址参数中指定它 ```title```. 例如: ```?title=You Company```
- **CSS样式**. 为了做到这一点你需要准备一个CSS文件并在网址参数中指明其地址 ```theme```. 例如: ```?theme=//company.com/some.css```. 你可以使用类名作为选择器。大多数情况下,他们在新版本发布时不会发生变化。
- **语言**. 你可以把它放在网址的参数中。 ```lang```. 例如: ```?lang=es```
<a name="link-14"></a>
<a name="link-15"></a>
### 🎨 如何签署提交?
遵循实践 [Conventional Commits 1.0.0](https://www.conventionalcommits.org/en/v1.0.0/). 例如:
```
@ -129,9 +135,9 @@ JIRA-1234 feat(profile): Added avatar for user
- 工作类别 `(feat, fix, style, refactor, test, doc 等等)`
- 工作领域 `(profile - 地盘组, 网页 或新功能, 一句话)`
- 职位描述 `(Added avatar for user)`
<a name="link-15"></a>
### 📝 How to add checking for commit message?
<a name="link-16"></a>
### 📝 How to add checking for commit message?
<a name="link-17"></a>
#### 👮 Use file `commit-msg`
1. Create file `commit-msg` in folder `.git/hooks/`
2. Add this text in file:
@ -142,7 +148,7 @@ if ! grep -iqE "(JIRA-[0-9]{1,5})(\s)(feat|fix|docs|style|refactor|test|chore)((
exit 1
fi
```
<a name="link-17"></a>
<a name="link-18"></a>
#### Use package [pre-commit](https://www.npmjs.com/package/pre-commit)
1. Add in file `package.json` property `commit-msg`:
```
@ -154,27 +160,27 @@ fi
...
```
2. Run command `npm install pre-commit`
<a name="link-18"></a>
### 如何自动化数据采集?
<a name="link-19"></a>
### 如何自动化数据采集?
<a name="link-20"></a>
#### 📚 With backend
- use module [Assayo Crawler](https://github.com/bakhirev/assayo-crawler);
<a name="link-20"></a>
<a name="link-21"></a>
#### 没有后端
- 克隆您的仓库;
- 复制文件夹 `build` 从当前仓库;
- 打开 `build/index.html` 在浏览器中添加书签;
- 添加一个快捷方式 `build/assets/ci-cd.sh` 自动启动文件夹 (Windows);
每次重启计算机,该脚本将更新统计数据,这些数据自动添加到主分支中。
<a name="link-21"></a>
### DevOps (CI/CD)
<a name="link-22"></a>
### DevOps (CI/CD)
<a name="link-23"></a>
#### 🛠️ 公共服务器
您可以将数据构建报告文件发布到公共URL可以使用网站来显示它。 [assayo](https://assayo.online/). 指定数据所在的地址作为URL参数 ```dump```:
```
https://assayo.online/demo/?dump=//you_site.com/some/log.txt
```
<a name="link-23"></a>
<a name="link-24"></a>
#### 专用服务器
- 下载 [docker镜像](https://hub.docker.com/r/bakhirev/assayo);
- 在本地网络中运行它;
@ -185,30 +191,30 @@ assayo_url - assayo容器的URL地址它监听80端口;
you_url - git日志的容器的URL地址;
```
默认情况下,镜像会被启动在地址 ```http://127.0.0.1:80/```. 如果没有成功请检查你的80端口是否可用.
<a name="link-24"></a>
<a name="link-25"></a>
#### Docker 图像更新
- 运行命令 ```npm run build:docker```
- 运行命令 ```docker build -t assayo .```
- 检查结果 ```docker run --name assayo -p 80:80 -d assayo```;
- 运行命令 ```docker tag assayo bakhirev/assayo:latest```;
- 提交容器映像到 Docker Hub ```docker push bakhirev/assayo:latest```;
<a name="link-25"></a>
### About application
<a name="link-26"></a>
### About application
<a name="link-27"></a>
#### 🛠️ Architecture
<img src="https://raw.githubusercontent.com/bakhirev/assayo-crawler/12af4410fc93384cafb108a4429e43f9a874dbaa/schema.svg" width="70%" />
1. [Reports showcase UI](https://github.com/bakhirev/assayo-showcase) displays a list of available reports. Each report consists of a title, description, and a list of repositories.
2. [Crawler service](https://github.com/bakhirev/assayo-crawler) collects repository logs for the report.
3. [Log visualization UI](https://github.com/bakhirev/assayo) **(you here)** displays report. Needs a log file for work.
<a name="link-27"></a>
<a name="link-28"></a>
#### 📐 释出版本大约每半年一次。接下来发生什么情况:
看 [主要文件](https://github.com/bakhirev/assayo/blob/main/documents/RU.md)
<a name="link-28"></a>
<a name="link-29"></a>
#### 🈯 如何添加或编辑翻译?
您可以在“翻译”部分添加新翻译或更正当前翻译。 ```ts/translations/```.
[指示手册](https://github.com/firstcontributions/first-contributions)
<a name="link-29"></a>
<a name="link-30"></a>
#### 🗺️ 愿望,建议,意见
- telegramm [@bakhirev](https://t.me/bakhirev) (优先通信方法)
- [alexey-bakhirev@yandex.ru](mailto:alexey-bakhirev@yandex.ru)

View file

@ -27,6 +27,6 @@ function JsonToMd(lang) {
fs.writeFileSync(`../${lang.toUpperCase()}.md`, content);
}
languages.forEach(MdToJson);
// languages.forEach(MdToJson);
languages.forEach(JsonToMd);

View file

@ -95,13 +95,19 @@
]
},
{
"p": "Git erstellt eine datei `log.txt`."
"p": "Git erstellt eine datei `log.txt`. Diese datei enthält die daten zum erstellen des berichts. Der unterschied zwischen den formaten liegt im vorhandensein einer wrapper für zeilen. Das format ohne internet wird wie eine js-datei geladen, wenn sie es einfach öffnen. `/build/index.html`"
},
{
"p": "Diese datei enthält die daten zum erstellen des berichts. "
"h4": "If you use PowerShell in Windows"
},
{
"p": "Der unterschied zwischen den formaten liegt im vorhandensein einer wrapper für zeilen. Das format ohne internet wird wie eine js-datei geladen, wenn sie es einfach öffnen. `/build/index.html`"
"p": "By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command."
},
{
"pre": "[Console]::OutputEncoding = [System.Text.Encoding]::UTF8"
},
{
"p": "Or open a saved file and manually change the encoding to UTF-8."
},
{
"h3": "Wie kann ich den bericht sehen?"

View file

@ -98,13 +98,19 @@
]
},
{
"p": "Git will create a file `log.txt`."
"p": "Git will create a file `log.txt`. 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 `"
},
{
"p": "This file contains data for show a report."
"h4": "If you use PowerShell in Windows"
},
{
"p": "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 `"
"p": "By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command."
},
{
"pre": "[Console]::OutputEncoding = [System.Text.Encoding]::UTF8"
},
{
"p": "Or open a saved file and manually change the encoding to UTF-8."
},
{
"h3": "How to view the report?"

View file

@ -98,13 +98,19 @@
]
},
{
"p": "Git creará un archivo `log.txt`."
"p": "Git creará un archivo `log.txt`. contiene los datos para construir el informe. La diferencia entre los formatos en línea y fuera de línea está en la existencia de una envoltura para las cadenas. El formato fuera de línea se cargará como un archivo`js` si usted simplemente lo abrió. `/build/index.html`"
},
{
"p": "contiene los datos para construir el informe. "
"h4": "If you use PowerShell in Windows"
},
{
"p": "La diferencia entre los formatos en línea y fuera de línea está en la existencia de una envoltura para las cadenas. El formato fuera de línea se cargará como un archivo`js` si usted simplemente lo abrió. `/build/index.html`"
"p": "By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command."
},
{
"pre": "[Console]::OutputEncoding = [System.Text.Encoding]::UTF8"
},
{
"p": "Or open a saved file and manually change the encoding to UTF-8."
},
{
"h3": "¿Cómo ver el informe?"

View file

@ -98,13 +98,19 @@
]
},
{
"p": "Git va créer le fichier `log.txt`."
"p": "Git va créer le fichier `log.txt`. Son contenu est destiné à la création de rapports. La différence entre le format en ligne et le format hors ligne réside dans lenveloppe des lignes. Le format hors ligne sera chargé comme un fichier js si vous avez simplement ouvert `/build/index.html`"
},
{
"p": "Son contenu est destiné à la création de rapports. "
"h4": "If you use PowerShell in Windows"
},
{
"p": "La différence entre le format en ligne et le format hors ligne réside dans lenveloppe des lignes. Le format hors ligne sera chargé comme un fichier js si vous avez simplement ouvert `/build/index.html`"
"p": "By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command."
},
{
"pre": "[Console]::OutputEncoding = [System.Text.Encoding]::UTF8"
},
{
"p": "Or open a saved file and manually change the encoding to UTF-8."
},
{
"h3": "Comment voir le rapport en ligne?"

View file

@ -98,13 +98,19 @@
]
},
{
"p": "Gitはファイルを作成します `log.txt`."
"p": "Gitはファイルを作成します `log.txt`. このファイルには、レポートを構築するためのデータが含まれています。 インターネットのない形式とインターネットのある形式は、文字列が埋め込まれているという点で異なります。インターネットを持たない形式でファイルを開くと、単に「js」ファイルとして読み込まれます。 `/build/index.html`"
},
{
"p": "このファイルには、レポートを構築するためのデータが含まれています。 "
"h4": "If you use PowerShell in Windows"
},
{
"p": "インターネットのない形式とインターネットのある形式は、文字列が埋め込まれているという点で異なります。インターネットを持たない形式でファイルを開くと、単に「js」ファイルとして読み込まれます。 `/build/index.html`"
"p": "By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command."
},
{
"pre": "[Console]::OutputEncoding = [System.Text.Encoding]::UTF8"
},
{
"p": "Or open a saved file and manually change the encoding to UTF-8."
},
{
"h3": "レポートを表示するにはどうすればよいですか? "

View file

@ -98,13 +98,19 @@
]
},
{
"p": "Git criar um ficheiro `log.txt`."
"p": "Git criar um ficheiro `log.txt`. Esse arquivo contém dados para construção de relatórios. A diferença entre os formatos está na existência de uma envoltória para as linhas. O formato sem internet será puxado como `js` o arquivo se você o abriu simplesmente `/build/index.html`"
},
{
"p": "Esse arquivo contém dados para construção de relatórios. "
"h4": "If you use PowerShell in Windows"
},
{
"p": "A diferença entre os formatos está na existência de uma envoltória para as linhas. O formato sem internet será puxado como `js` o arquivo se você o abriu simplesmente `/build/index.html`"
"p": "By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command."
},
{
"pre": "[Console]::OutputEncoding = [System.Text.Encoding]::UTF8"
},
{
"p": "Or open a saved file and manually change the encoding to UTF-8."
},
{
"h3": "Como ver o relatório?"

View file

@ -95,13 +95,19 @@
]
},
{
"p": "Git создаст файл `log.txt`."
"p": "Git создаст файл `log.txt`. Он содержит данные для построения отчёта. Разница между онлайн и офлайн форматом в наличие обёртки для строк. Оффлайн формат будет подтягиваться, как `js` файл если вы просто открыли `/build/index.html`"
},
{
"p": "Он содержит данные для построения отчёта. "
"h4": "Если вы используете PowerShell в Windows"
},
{
"p": "Разница между онлайн и офлайн форматом в наличие обёртки для строк. Оффлайн формат будет подтягиваться, как `js` файл если вы просто открыли `/build/index.html`"
"p": "По умолчанию, поток вывода не совпадает с UTF-8 и итоговый файл становится нечитаемым. Перед сохранением файла с логом вы можете изменить кодировку командой:"
},
{
"pre": "[Console]::OutputEncoding = [System.Text.Encoding]::UTF8"
},
{
"p": "Или откройте сохраненный файл и вручную измените кодировку на UTF-8."
},
{
"h3": "Как посмотреть отчёт? "

View file

@ -98,13 +98,19 @@
]
},
{
"p": "Git会创建一个文件 `log.txt`."
"p": "Git会创建一个文件 `log.txt`. 这个文件包含了构建报告的数据。 字符串格式的区别在于它们具有的包装。无网络格式将会像您只是简单地打开了js文件一样被加载。 `/build/index.html`"
},
{
"p": "这个文件包含了构建报告的数据。 "
"h4": "If you use PowerShell in Windows"
},
{
"p": "字符串格式的区别在于它们具有的包装。无网络格式将会像您只是简单地打开了js文件一样被加载。 `/build/index.html`"
"p": "By default, the output encoding may not match UTF-8 and the resulting log file will be unreadable. Before saving the log, you can change the encoding with the command."
},
{
"pre": "[Console]::OutputEncoding = [System.Text.Encoding]::UTF8"
},
{
"p": "Or open a saved file and manually change the encoding to UTF-8."
},
{
"h3": "如何在线查看报告?"

View file

@ -8,6 +8,7 @@ const SMILES = [
'📤', // 7
null, // 8
null, // 9
null, // 9
'📈', // 10
null, // 11
null, // 12

View file

@ -2,7 +2,11 @@ const custom = require('./custom');
const TableOfContent = require('./TableOfContent');
function addListWithPrefix(list, markdown, prefix = '') {
if (Array.isArray(list)) {
(list || []).forEach((text) => text ? markdown.push(`${prefix}${text}`) : '');
} else if (typeof list === 'string') {
markdown.push(`${prefix}${list}`);
}
}
function addList(list, markdown) {

View file

@ -19,12 +19,14 @@ function Scoring({
if (!value) return null;
return (
<div className={style.card_with_icon_scoring_wrapper}>
<div
title={t(title || 'page.person.scoring.toolbar')}
className={style.card_with_icon_scoring}
>
{`${value} / ${total || value}`}
</div>
</div>
);
}

View file

@ -73,21 +73,28 @@
color: var(--color-grey);
}
&_scoring {
position: absolute;
bottom: -11px;
left: 30%;
right: 30%;
&_scoring {
display: inline-block;
min-width: 80px;
max-width: 80%;
padding: var(--space-xxxs) var(--space-xs);
margin: 0 auto;
white-space: nowrap;
text-align: center;
border-radius: var(--border-radius-s);
border: 1px solid var(--color-border);
background-color: var(--color-white);
&_wrapper {
position: absolute;
bottom: -11px;
left: 0;
right: 0;
text-align: center;
}
}
&_small {

View file

@ -4,14 +4,63 @@ const PROPERTIES = [
{ property: 'daysWorked', sort: 1 },
{ property: 'daysLosses', sort: -1 },
{ property: 'commits', sort: 1 },
{ property: 'daysForTask', sort: -1 },
{ property: 'tasks', sort: 1 },
{ property: 'moneyAll', sort: 1 },
{ property: 'moneyWorked', sort: 1 },
{ property: 'moneyLosses', sort: -1 },
{ property: 'weekendPayment', sort: -1 },
{ property: 'weekendPayment', sort: 1 },
{
property: 'daysForTask',
sort: -1,
formatter: (user: any) => user.daysForTask && user.tasks.length ? user.daysForTask : Infinity,
},
{
property: 'commitsForTask',
sort: 1,
formatter: (user: any) => user.tasks.length ? (user.commits / user.tasks.length) : Infinity,
},
{
property: 'linesForTask',
sort: -1,
formatter: (user: any) => user.tasks.length ? user.changesForTask : Infinity,
},
{
property: 'speedMaxTasks',
sort: 1,
formatter: (user: any, timestamp: any) => timestamp.tasksByTimestampCounter.max,
},
{
property: 'speedMaxCommits',
sort: 1,
formatter: (user: any, timestamp: any) => timestamp.commitsByTimestampCounter.max,
},
{
property: 'moneyForTask',
sort: 1,
formatter: (user: any) => user.moneyWorked / user.tasks.length,
},
{
property: 'moneyForCommit',
sort: 1,
formatter: (user: any) => user.moneyWorked / user.commits,
},
];
function getValue(config: any, user: any, dataGripByTimestamp: any) {
const timestamp = dataGripByTimestamp.statisticByAuthor[user.author];
if (config.formatter) {
return config.formatter(user, timestamp);
}
const value = user[config.property]
|| timestamp[config.property]
|| 0;
return Array.isArray(value)
? value?.length
: value;
}
export default class DataGripByScoring {
total: IHashMap<number> = {};
@ -26,7 +75,7 @@ export default class DataGripByScoring {
this.statisticByName = {};
}
updateTotalInfo(dataGripByAuthor: any) {
updateTotalInfo(dataGripByAuthor: any, dataGripByTimestamp: any) {
const list = [...dataGripByAuthor.statistic];
list.forEach((user: any) => {
@ -34,12 +83,7 @@ export default class DataGripByScoring {
});
PROPERTIES.forEach((config: any) => {
const values = list.map((user: any) => {
const value = user[config.property] || 0;
return Array.isArray(value)
? value?.length
: value;
});
const values = list.map((user: any) => getValue(config, user, dataGripByTimestamp));
const uniqValues = Array.from(new Set(values));
const places = uniqValues
@ -47,12 +91,9 @@ export default class DataGripByScoring {
.map((v, i) => [v, i + 1]);
const refValuePlace = Object.fromEntries(places);
list.forEach((user: any) => {
const userValue = user[config.property];
const userFormattedValue = Array.isArray(userValue)
? userValue?.length
: userValue;
this.statisticByName[user.author][config.property] = refValuePlace[userFormattedValue];
list.forEach((user: any, index: number) => {
const userValue = values[index];
this.statisticByName[user.author][config.property] = refValuePlace[userValue];
});
this.total[config.property] = uniqValues.length;

View file

@ -85,7 +85,7 @@ class DataGrip {
this.pr.updateTotalInfo(this.author);
this.tasks.updateTotalInfo(this.pr);
this.release.updateTotalInfo();
this.scoring.updateTotalInfo(this.author);
this.scoring.updateTotalInfo(this.author, this.timestamp);
}
}

View file

@ -89,6 +89,10 @@ const Money = observer(({ user }: IPersonCommonProps): React.ReactElement => {
icon="./assets/cards/money_task.png"
title="page.person.money.tasks.title"
description="page.person.money.tasks.description"
scoring={{
value: scoring.moneyForTask,
total: scoringTotal.moneyForTask,
}}
/>
<CardWithIcon
size="l"
@ -98,6 +102,10 @@ const Money = observer(({ user }: IPersonCommonProps): React.ReactElement => {
icon="./assets/cards/money_work.png"
title="page.person.money.commits.title"
description="page.person.money.commits.description"
scoring={{
value: scoring.moneyForCommit,
total: scoringTotal.moneyForCommit,
}}
/>
</div>
)}

View file

@ -17,6 +17,8 @@ import IPersonCommonProps from '../interfaces/CommonProps';
const Speed = observer(({ user }: IPersonCommonProps): React.ReactElement => {
const statistic = user;
const byTimestamp = dataGripStore.dataGrip.timestamp.statisticByAuthor[statistic.author];
const scoring = dataGripStore.dataGrip.scoring.statisticByName[user.author];
const scoringTotal = dataGripStore.dataGrip.scoring.total;
const taskNumber = statistic.tasks.length;
if (statistic.isStaff) {
@ -42,6 +44,10 @@ const Speed = observer(({ user }: IPersonCommonProps): React.ReactElement => {
icon="./assets/cards/month.png"
title="page.person.speed.days.title"
description="page.person.speed.days.description"
scoring={{
value: scoring.daysForTask,
total: scoringTotal.daysForTask,
}}
/>
<CardWithIcon
value={taskNumber
@ -50,12 +56,20 @@ const Speed = observer(({ user }: IPersonCommonProps): React.ReactElement => {
icon="./assets/cards/commits.png"
title="page.person.speed.commits.title"
description="page.person.speed.commits.description"
scoring={{
value: scoring.commitsForTask,
total: scoringTotal.commitsForTask,
}}
/>
<CardWithIcon
value={taskNumber ? statistic.changesForTask : null}
icon="./assets/cards/lines.png"
title="page.person.speed.line.title"
description="page.person.speed.line.description"
scoring={{
value: scoring.linesForTask,
total: scoringTotal.linesForTask,
}}
/>
<CardWithBanner />
</div>
@ -70,6 +84,10 @@ const Speed = observer(({ user }: IPersonCommonProps): React.ReactElement => {
icon="./assets/cards/tasks.png"
title="page.person.speed.tasks.title"
description="page.person.speed.tasks.description"
scoring={{
value: scoring.speedMaxTasks,
total: scoringTotal.speedMaxTasks,
}}
/>
<CardWithIcon
size="l"
@ -77,6 +95,10 @@ const Speed = observer(({ user }: IPersonCommonProps): React.ReactElement => {
icon="./assets/cards/commits.png"
title="page.person.speed.maxCommits.title"
description="page.person.speed.maxCommits.description"
scoring={{
value: scoring.speedMaxCommits,
total: scoringTotal.speedMaxCommits,
}}
/>
</div>
</PageColumn>

View file

@ -38,9 +38,9 @@ function AchievementBlock({ title, achievements }: IAchievementBlockProps) {
const Total = observer(({ user }: IPersonCommonProps): React.ReactElement => {
const { t } = useTranslation();
const statistic = user;
const scoringTotal = dataGripStore.dataGrip.scoring.total;
const scoring = dataGripStore.dataGrip.scoring.statisticByName[user.author];
const commitsWithGet = dataGripStore.dataGrip.get.getsByAuthor[user.author];
const scoring = dataGripStore.dataGrip.scoring.statisticByName[user.author];
const scoringTotal = dataGripStore.dataGrip.scoring.total;
const taskNumber = statistic.tasks.length;
const achievements = achievementByAuthor.authors[statistic.author];

View file

@ -110,6 +110,9 @@ class DataGripStore {
if (commit.timestamp < filtersInHeaderStore.from
|| commit.timestamp > filtersInHeaderStore.to) return;
// if ((commit.message || '').indexOf('Deploying') !== -1) return;
// if ((commit.message || '').indexOf('Deployed') !== -1) return;
const localCommit = this.isDepersonalized
? depersonalized.getCommit(commit)
: commit;

View file

@ -181,7 +181,7 @@ export default `
§ page.person.total.daysWorked.description: Учтены только дни, в которые делались коммиты
§ page.person.total.tasks.title: задач
§ page.person.total.tasks.description: Если коммиты правильно подписаны
§ page.person.scoring.toolbar: Позиция по этой метрике, относительно других. Два сотрудника могут занять одну позицию, если значение совпало. Поэтому, общее число позиций может быть меньше, чем количество сотрудников.
§ page.person.scoring.toolbar: Позиция по этой метрике, относительно других. Два сотрудника могут занять одно место, если значение совпало. Поэтому, общее число мест может быть меньше, чем количество сотрудников.
§ page.person.character.title: Персонаж
§ page.person.achievement.title: Достижения
§ page.person.achievement.positive: Позитивные