Project

herodot

0.0
Repository is archived
No commit activity in last 3 years
No release in over 3 years
There's a lot of open issues
With herodot you can track the times you spend on a git branch. When using a branch for each ticket you work on, herodot helps you with your time tracking.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

 Project Readme

Herodot

Build Status

Tracks your work based on git branch checkouts and commits. With herodot every time you switch branches or commit into a branch, the brach name, time and project is logged into a worklog file. Herodot can then parse that worklog file and show you a rough estimate on which branch in which folder you worked on and how long. This can aid you with your personal time tracking.

Installation

Install with:

$ gem install herodot

Make sure you have installed at least ruby 2.1 or any newer ruby version.

Usage

Track a git repository:

$ herodot track [path=.]

Show your worklogs this week:

$ herodot show

or shorter

$ herodot

Show last week

$ herodot show last week

Show worklogs from 19-12-2016

$ herodot show 19-12-2016

Herodot uses Chronic (https://github.com/mojombo/chronic) under the hood so you can enter anything that chronic supports.

Instead of a terminal table you can also output into the json format:

$ herodot show -f json
$ herodot show -f json last week
$ herodot show --format json last week

Show Help:

$ herodot help
$ herodot help track
$ herodot help show

Linking to issue trackers

If you use https://github.com/bitcrowd/tickety-tick or otherwise have branch names, that contain the issue number, you can link a tracked herodot repository with your issue tracker, so it will print urls of issues it recognizes under the branch name.

To use this feature set up a link with

$ herodot link

You are then guided through the process of linking. When using JIRA, Github, or GitLab with tickety-tick, this should be rather self-explaining, but you can also set up a custom tracker if you are using something different. Just choose other and add a URL, to which issue numbers can be appended and a Ruby style regular expression, to cut out the issue number out of your branches.

The result will be written into a .herodot.yml file in the current or specified directory.

HINT: If you do not want to add .herodot.yml into your repo or .gitignore, you can add it to ./.git/info/exclude as well.

Configuration

Herodot writes a configuration yaml to ~/.herodot.yml with something like this:

---
projects_directory: "~" # Directory where you checkout your projects. Used to shorten paths
work_times:             # Your work times that are used for guessing the times.
  work_start: '9:30'
  lunch_break_start: '13:00'
  lunch_break_end: '13:30'
  work_end: '18:00'

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/bitcrowd/herodot.

License

The gem is available as open source under the terms of the MIT License.