org_heigl / captainhook_addtime
Add the time since your last commit to the commit-message
Installs: 29
Dependents: 2
Suggesters: 0
Security: 0
Stars: 1
Forks: 0
pkg:composer/org_heigl/captainhook_addtime
Requires
- php: ^7.2
- captainhook/captainhook: ^4.0
Requires (Dev)
- captainhook/plugin-composer: ^4.0
- phpunit/phpunit: ^7.5
This package is auto-updated.
Last update: 2025-10-24 22:18:08 UTC
README
A small addition to CaptainHook that will add the time since your last commit to your commitmessage
That way you can use a different tool to extract the times you spent on a project from the commitmessages
To be sure that the time is added to each commit there is also a check that can be used to verify that a time is added.
Installation
Install this package using composer
composer require --dev heiglandreas/captainhook_addtime
Usage
Adding time
In your captainhook.json file you can then add this hook to your prepare-commit-msg-hooks:
{
  "prepare-commit-msg" : {
    "enabled" : true,
    "actions" : [{
      "action" : "\\Org_Heigl\\CaptainHook\\Hooks\\AddTime\\AddTimeAction",
      "options" : {
        "fuzziness": "\\Org_Heigl\\CaptainHook\\Hooks\\AddTime\\Fuzzier\\TenMinutesCeiling"
      }
    }]
  }
}
This will round up to the next 10 minutes.
Verifying time is added
To make sure that each commit contains a time you can add this to your captainhook.json-file:
{
  "commit-msg": {
    "enabled": true,
    "actions": [{
      "action": "\\Org_Heigl\\CaptainHook\\Hooks\\AddTime\\EnsureTime",
      "options": {}
    }]
  }
}
This will require each commit-message to contain something like the following on one line:
Time: 12h15m
There can be whitespace before or after the content but the 'h' and 'm' needs to be lower case and there must not be any whitespace in that time-information.
You can ommit the hours or the minutes. (Ommiting both doesn't really make sense (-; )
