tlog
tlog is a git-based tool to help you with time and ticket tracking on your projects.
Installing
$ sudo gem install tlog
Usage
- Navigate to a git repo
- Create time logs for project tasks
- Assign a time goal, owner, points value, or state to each time log
- Track time working on a task
- Collaborate by sharing time logs with other people working on your project
Create a time log
Create a default time log with no goal
$ tlog create example
Create a time log with a time goal
$ tlog create example --goal 4hr
Create a new time log with a state and a points value
$ tlog create example --state OPEN --points 10
Using time logs
Check out a time log
$ tlog checkout example
Start a new task the checked-out time log
$ tlog start -d "My task description"
Update the state of the checked-out time log
$ tlog state CLOSED
Update the points value of the checked-out time log
$ tlog points 10
Update the owner of the checked-out time log
$ tlog owner cewendel
Stop the current task
$ tlog stop example
Stop the current task and commit your tracked changes to the current branch
$ tlog stop example -a -m "My commit message"
Use your task description as the commit message
$ tlog stop example -a
Delete a time log
$ tlog delete example
Displaying time logs
Display all time logs
$ tlog display
Log: bugfix
State: open
Points: 10
Owner: andrew
Start End Duration Description
June 06, 12:45PM June 06, 12:46PM 1:00:27 fixing really bad bug
June 07,
----------------------------------------------------------------------------------------------------
Total 1:00:27
Time left: 0:59:33
Log: important
State: closed
Points: 0
Owner: chris
Start End Duration Description
----------------------------------------------------------------------------------------------------
Total 0:00:00
Log: feature1
State: hold
Points: 5
Owner: peter
Start End Duration Description
June 13, 12:32PM June 13, 12:33PM 0:00:34 making sure new feature works
June 13, 12:29PM June 13, 12:32PM 0:02:30 working on new feature
----------------------------------------------------------------------------------------------------
Total 0:03:04
Time left: 3:56:56
Show all time logs and label the checked-out log or the in-progress log
$ tlog all
All Time Logs:
testing
feature1(in-progress)
bug fix
feature2
Display a specific time log
$ tlog display feature1
Log: feature1
State: hold
Points: 5
Owner: peter
Start End Duration Description
June 13, 12:32PM June 13, 12:33PM 0:00:34 making sure new feature works
June 13, 12:29PM June 13, 12:32PM 0:02:30 working on new feature
----------------------------------------------------------------------------------------------------
Total 0:03:04
Time left: 3:56:56
Constrain displayed time logs to only ones that have less than the specified amount of time left
$ tlog display -g 1hr
Log: bugfix
State: open
Points: 10
Owner: andrew
Start End Duration Description
June 06, 12:45PM June 06, 12:46PM 1:00:27 fixing really bad bug
----------------------------------------------------------------------------------------------------
Total 1:00:27
Time left: 0:59:33
Constrain displayed time logs to only ones with specified states
$ tlog display -s open,hold
Log: bugfix
State: open
Points: 10
Owner: andrew
Start End Duration Description
June 06, 12:45PM June 06, 12:46PM 1:00:27 fixing really bad bug
----------------------------------------------------------------------------------------------------
Total 1:00:27
Time left: 0:59:33
Log: feature1
State: hold
Points: 5
Owner: peter
Start End Duration Description
June 13, 12:32PM June 13, 12:33PM 0:00:34 making sure new feature works
June 13, 12:29PM June 13, 12:32PM 0:02:30 working on new feature
----------------------------------------------------------------------------------------------------
Total 0:03:04
Time left: 3:56:56
Constrain displayed time logs to only ones with specified owners
$ tlog display -o chris,peter
Log: important
State: closed
Points: 0
Owner: chris
Start End Duration Description
----------------------------------------------------------------------------------------------------
Total 0:00:00
Log: feature1
State: hold
Points: 5
Owner: peter
Start End Duration Description
June 13, 12:32PM June 13, 12:33PM 0:00:34 making sure new feature works
June 13, 12:29PM June 13, 12:32PM 0:02:30 working on new feature
----------------------------------------------------------------------------------------------------
Total 0:03:04
Time left: 3:56:56
Contrain displayed time logs to only ones that have points values >= the specified points value
$ tlog display -p 10
Log: bugfix
State: open
Points: 10
Owner: andrew
Start End Duration Description
June 06, 12:45PM June 06, 12:46PM 1:00:27 fixing really bad bug
June 07,
----------------------------------------------------------------------------------------------------
Total 1:00:27
Time left: 0:59:33
Collaboration
tlog makes for easy time and ticket tracking when working with a team. Assuming you have a remote repo that you and others are pushing to, use the tlog push
and tlog pull
commands to keep your time logs up to date.
Pull in new or updated time logs from upstream
$ tlog pull
Push new or updated time logs upstream
$ tlog push
Contributing
Please look at the TODO for possible additional features. Use Github issues to track bugs and feature requests.
Licence
GNU GENERAL PUBLIC LICENCE Version 2