Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tomgi/git_stats
GitStats is a git repository statistics generator.
https://github.com/tomgi/git_stats
git statistics-generator
Last synced: 4 days ago
JSON representation
GitStats is a git repository statistics generator.
- Host: GitHub
- URL: https://github.com/tomgi/git_stats
- Owner: tomgi
- License: mit
- Created: 2012-10-06T07:22:38.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2024-05-08T03:48:26.000Z (8 months ago)
- Last Synced: 2024-12-12T12:06:16.738Z (11 days ago)
- Topics: git, statistics-generator
- Language: Ruby
- Homepage:
- Size: 34 MB
- Stars: 1,082
- Watchers: 21
- Forks: 153
- Open Issues: 53
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# GitStats [![Build Status](https://secure.travis-ci.org/tomgi/git_stats.svg)](https://secure.travis-ci.org/tomgi/git_stats) [![Build Status](https://codeclimate.com/badge.png)](https://codeclimate.com/github/tomgi/git_stats)
GitStats is a git repository statistics generator.
It browses the repository and outputs html page with statistics.## Examples
* [devise](http://tomgi.github.com/git_stats/examples/devise/index.html)
* [devise_invitable](http://tomgi.github.com/git_stats/examples/devise_invitable/index.html)
* [john](http://tomgi.github.com/git_stats/examples/john/index.html)
* [jquery](http://tomgi.github.com/git_stats/examples/jquery/index.html)
* [merit](http://tomgi.github.com/git_stats/examples/merit/index.html)
* [paperclip](http://tomgi.github.com/git_stats/examples/paperclip/index.html)
* [rails](http://tomgi.github.com/git_stats/examples/rails/index.html)## Installation
### Existing ruby/gem environment
$ gem install git_stats
### debian stretch (9.*)# apt-get install ruby ruby-nokogiri ruby-nokogiri-diff ruby-nokogumbo
# gem install git_stats
### Ubuntu$ sudo apt-get install ruby ruby-dev gcc zlib1g-dev make
$ sudo gem install git_stats## Usage
### Generator
#### Print help
$ git_stats
Commands:
git_stats generate # Generates the statistics of a repository
git_stats help [COMMAND] # Describe available commands or one specific command#### Print help of the generate command
$ git_stats help generate
Usage:
git_stats generateOptions:
p, [--path=PATH] # Path to repository from which statistics should be generated.
# Default: .
o, [--out-path=OUT_PATH] # Output path where statistics should be written.
# Default: ./git_stats
l, [--language=LANGUAGE] # Language of written statistics.
# Default: en
f, [--first-commit-sha=FIRST_COMMIT_SHA] # Commit from where statistics should start.
t, [--last-commit-sha=LAST_COMMIT_SHA] # Commit where statistics should stop.
# Default: HEAD
s, [--silent], [--no-silent] # Silent mode. Don't output anything.
d, [--tree=TREE] # Tree where statistics should be generated.
# Default: .
c, [--comment-string=COMMENT_STRING] # The string which is used for comments.
# Default: //Generates the statistics of a repository
#### Start generator with default settings
$ git_stats generate
git rev-list --pretty=format:'%h|%at|%ai|%aE' HEAD | grep -v commit
git shortlog -se HEAD
...#### Start generator with some parameters in long and short form.
$ git_stats generate -o stats --langugage de
git rev-list --pretty=format:'%h|%at|%ai|%aE' HEAD | grep -v commit
git shortlog -se HEAD
...### API usage example
> repo = GitStats::GitData::Repo.new(path: '.', first_commit_sha: 'abcd1234', last_commit_sha: 'HEAD')
> repo.authors
=> [...]
> repo.commits
=> [...]
> commit.files
=> [...]## Contributing
1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Added some feature'`)
4. Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
5. Push to the branch (`git push origin my-new-feature`)
6. Create new Pull Request