git-time-metric / Gtm

Licence: mit
Simple, seamless, lightweight time tracking for Git

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Gtm

Atom Wakatime
Atom plugin for automatic time tracking and metrics generated from your programming activity.
Stars: ✭ 303 (-64.64%)
Mutual labels:  time-tracker, metrics
Wakatime
Command line interface used by all WakaTime text editor plugins.
Stars: ✭ 1,028 (+19.95%)
Mutual labels:  time-tracker, metrics
Resilience4j
Resilience4j is a fault tolerance library designed for Java8 and functional programming
Stars: ✭ 7,521 (+777.6%)
Mutual labels:  metrics
Spm Agent Mongodb
Sematext Agent for monitoring MongoDB
Stars: ✭ 7 (-99.18%)
Mutual labels:  metrics
Browser Perf
Performance Metrics for Web Browsers
Stars: ✭ 930 (+8.52%)
Mutual labels:  metrics
Graylog Plugin Metrics
Graylog output plugin for Graphite and Ganglia
Stars: ✭ 16 (-98.13%)
Mutual labels:  metrics
Postgresql exporter
A Prometheus exporter for some postgresql metrics
Stars: ✭ 26 (-96.97%)
Mutual labels:  metrics
Analytics
Lightweight analytics abstraction layer for tracking page views, custom events, & identifying visitors
Stars: ✭ 814 (-5.02%)
Mutual labels:  metrics
Fathom
Fathom Lite. Simple, privacy-focused website analytics. Built with Golang & Preact.
Stars: ✭ 6,989 (+715.52%)
Mutual labels:  metrics
Logmonitor
Monitoring log files on windows systems.
Stars: ✭ 23 (-97.32%)
Mutual labels:  metrics
D4s
Dynamo DB Database Done Scala-way
Stars: ✭ 27 (-96.85%)
Mutual labels:  metrics
Docker Go Graphite
Docker image for go-carbon + carbonapi + grafana
Stars: ✭ 23 (-97.32%)
Mutual labels:  metrics
Effrit
Go Efferent and Afferent package metric calculator.
Stars: ✭ 18 (-97.9%)
Mutual labels:  metrics
Json Exporter
Prometheus exporter which fetches JSON from a URL and exports one of the values as gauge metrics
Stars: ✭ 26 (-96.97%)
Mutual labels:  metrics
Django Prometheus
Export Django monitoring metrics for Prometheus.io
Stars: ✭ 823 (-3.97%)
Mutual labels:  metrics
Sloc
simple tool to count SLOC (source lines of code)
Stars: ✭ 841 (-1.87%)
Mutual labels:  metrics
Prometheus
Kubernetes Setup for Prometheus and Grafana
Stars: ✭ 824 (-3.85%)
Mutual labels:  metrics
Wobserver
Web based metrics, monitoring, and observer
Stars: ✭ 900 (+5.02%)
Mutual labels:  metrics
Gin Stats
Gin's middleware for request stats
Stars: ✭ 24 (-97.2%)
Mutual labels:  metrics
Metrics Jvm Extras
A set of additional metrics complementing Dropwizards metrics-jvm.
Stars: ✭ 10 (-98.83%)
Mutual labels:  metrics
GTM Logo
Git Time Metric

Seamless time tracking for all your Git projects

$ gtm report -last-month
$ gtm report -last-month -format summary
$ gtm report -last-month -format timeline-hours

GTM is automatic, seamless and lightweight. There is no need to remember to start and stop timers. It runs on occasion to capture activity triggered by your editor. The time metrics are stored locally with the git repository as Git notes and can be pushed to the remote repository.

Plugins

Simply install a plugin for your favorite editor and the GTM command line utility to start tracking your time now.

Getting Started

Install the latest GTM release

Mac OS X

The simplest way to install is to use Homebrew

brew tap git-time-metric/gtm
brew install gtm

Windows

  • Download and run the Windows installer from here

Linux

The simplest way to install is to use Linuxbrew

brew tap git-time-metric/gtm
brew install gtm

Manually install for Linux, OSX or Windows

  • Download and install the executable from here

Install a plugin for your editor

Initialize a project for time tracking

$ cd /my/project/dir
$ gtm init

Git Time Metric initialized for /my/project/dir

     post-commit: gtm commit --yes
  alias.fetchgtm: fetch origin refs/notes/gtm-data:refs/notes/gtm-data
   alias.pushgtm: push origin refs/notes/gtm-data
notes.rewriteref: refs/notes/gtm-data
        terminal: true
      .gitignore: /.gtm/
            tags: tag1, tag2 

Edit some files in your project

Check your progress with gtm status.

$ gtm status

       20m 40s  53% [m] plugin/gtm.vim
       18m  5s  46% [r] Terminal
           15s   1% [m] .gitignore
       39m  0s          gtm-vim-plugin 

Commit your work

When you are ready, commit your work like you usually do. GTM will automatically save the time spent associated with your commit. To check the time of the last commit type gtm report.

$ gtm report

7129f00 Remove post processing of status
Fri Sep 09 20:45:03 2016 -0500 gtm-vim-plugin Michael Schenk

       20m 40s  53% [m] plugin/gtm.vim
       18m  5s  46% [r] Terminal
           15s   1% [m] .gitignore
       39m  0s          gtm-vim-plugin 

Optionally save time in the remote Git repository

GTM provides git aliases to make this easy. It defaults to origin for the remote repository.

Time data can be saved to the remote repository by pushing.

$ git pushgtm 

Time data can be retrieved from the remote repository by fetching.

$ git fetchgtm 

Getting Help

For help from the command line type gtm --help and gtm <subcommand> --help.

For additional help please consult the Wiki.

Contributing

Build Status Build status Coverage Status Go Report Card

If you find a bug or have an idea for a new feature please feel free to file new issues and submits PRs. In particular if there isn't a plugin for your favorite editor, go ahead and create one!

For more detail on how to write plugins, check out the Wiki.

Support

To report a bug, please submit an issue on the GitHub Page

Consult the Wiki for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].