Skip to content

Commit

Permalink
refactor: remaining documentation in folder
Browse files Browse the repository at this point in the history
  • Loading branch information
dd84ai committed Dec 10, 2023
1 parent ca583eb commit 84e2767
Show file tree
Hide file tree
Showing 6 changed files with 16 additions and 112 deletions.
File renamed without changes.
12 changes: 8 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,16 @@

**Communicating through git professionally**

autogit is a CLI tool to validate submitted commits according to [git conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) standard. the tool allows to generate changelogs for releases in different formats. When you generate changelogs and see quick feedback of an end result, it promotes you to write commits better.
autogit is a CLI tool to validate submitted commits according to [git conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) standard. the tool allows to generate changelogs for releases in different formats. With ability to see quickly how your changelog looks like, it motivates you to write more meaningful commits

as a result of a tool work, you communicate your developer work better to other developers and have more professional looking repository.
as a result of a tool work, you have decreased toll on release documentation writing and you communicate your developer work better to other developers/users and have more professional looking repository in terms of commits, tags, versions, releases and changelogs.

# Features

- hooks to git-hooks and works to validate your git commits to [git conventional commits]((https://www.conventionalcommits.org/en/v1.0.0/)) standard for any git tool.
- has extra possible validating rules to configure, like having minimum 3 words in a subject of a commit.
- `autogit hook activate --global`(flag to turn it on for all repos)
- suggests next [semantic version](https://semver.org/) with `autogit semver`
- suggests next [semantic version](https://semver.org/) for your product release with `autogit semver`
- has options to sugest next version as alpha, beta, prerelease version with build meta data.
- generates changelogs with `autogit changelog` command
- currently supports markdown and bbcode formats
Expand All @@ -24,7 +24,11 @@ as a result of a tool work, you communicate your developer work better to other
- initialize settings for more customization with `autogit init` inside git repo
- uncomment and override desired settings
- find out more commands and options with `autogit [any set of sub commands] --help`
- CI friendly, not requires any dependencies for its usage for everything (inbuilt git-go to access git information)
- CI friendly binary file, not requires any dependencies for its usage for everything
- see [CI example](.github/workflows/validate.yml)
- compliled for linux/windows/macos and amd64/arm64/386/arm
- Contains inbuilt git. Not requiring git to be installed for its functionality


# Getting started

Expand Down
39 changes: 6 additions & 33 deletions docs/development/algos.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,7 @@
You try to write git commit -m "feat: add rendering in format format"
your githook is activated and tries to parse your commit name accroding to git conventional commits standard. If unable, it will give you error and prevent commit

<!DOCTYPE html>

<html lang="en">
<head>
<meta charset="utf-8">
</head>
<body>
<pre class="mermaid">
```mermaid
flowchart TD
GitCommit[attempt to fixate commit like
git commit -m 'feat: add md rendering'
Expand All @@ -29,22 +22,13 @@ flowchart TD
CheckOptionalValidationRulesIfEnabled --> WhenAppliedRules[when applied rules]
WhenAppliedRules --> IfCommit[if it was commit,\nthen fixate if passed rules,\nor cancel fixation]
WhenAppliedRules --> IfChangelog[if it was changelog validation\nthen report no errors and exit code 0\nfor pipeline checks]
</pre>
</body>
</html>
```

## scenario #2 - changelog / Your wish to see changelog of additions you made, what are new features, what are fixes. For user view

You wish to have changelog auto generated.

<!DOCTYPE html>

<html lang="en">
<head>
<meta charset="utf-8">
</head>
<body>
<pre class="mermaid">
```mermaid
flowchart TD
RequestingChangelog[Requesting changelog]
RequestingChangelog --> ChangelogFromLatestCommitToPreviousTagVersion
Expand All @@ -71,9 +55,7 @@ flowchart TD
RenderChangelogMarkdown[Render in markdown\n--implemented--]
RenderChangelogRst[Render in rst\n--not implemented--]
RenderChangelogHtml[Render in html\n--not implemented--]
</pre>
</body>
</html>
```

### example of rendered changelog

Expand All @@ -91,14 +73,7 @@ Program checks if u made no commits, or only refactoring and styling.

more detailed algorithm, accounting also prerelease version calculations:

<!DOCTYPE html>

<html lang="en">
<head>
<meta charset="utf-8">
</head>
<body>
<pre class="mermaid">
```mermaid
flowchart TD
RequestNextSemanticVersioning[Request next semantic versioning]
RequestNextSemanticVersioning --> FindCommits[Find commits\nfrom HEAD^1 to previous stable semantic version like v0.3.0]
Expand All @@ -122,6 +97,4 @@ flowchart TD
CalculatedMainVersion ----> AddBuildMetaData[Add build meta data\nas +$BuildMetaData\nto the end of version]
CombineIntoTotalPrereleaseVersion --> OutputFinalSemanticVersion
AddBuildMetaData --> OutputFinalSemanticVersion[Render Final Semantic Version]
</pre>
</body>
</html>
```
13 changes: 2 additions & 11 deletions docs/development/code_architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,7 @@

## Diagram

<!DOCTYPE html>

<html lang="en">
<head>
<meta charset="utf-8">
</head>
<body>
<pre class="mermaid">
```mermaid
flowchart TD
UI[Interface-CLI\nUser interface via Cobra CLI third party lib]
UI --> Actions[Actions\nreusable actions without\nattachements to UI details]
Expand All @@ -31,9 +24,7 @@ flowchart TD
SemanticGit --> SemVer[SemVer\nimplements original Semantic Version\naccording to SemVer2.0.0 standard\nImplemented in current repo]
SemanticGit --> Git[Git\ngit wrapper to simple interface\nfor current repository logic\nimplemented in current repo]
Git --> GitGo[Git-Go\nEngine under the hood for\nGit repository operations\nImplemented by third party]
</pre>
</body>
</html>
```

## Support promises:

Expand Down
22 changes: 0 additions & 22 deletions docs/intro/1_reasoning.md

This file was deleted.

42 changes: 0 additions & 42 deletions docs/intro/2_installation.md

This file was deleted.

0 comments on commit 84e2767

Please sign in to comment.