This is done so you can easily from your terminal track your time to Timeharvest
- PHP >7.4
- Only tested on linux
You can find the newest time.phar file on github releases
Download the time.phar and put in either in your $PATH or in /usr/local/bin
Now you can from anywhere call time.phar
The first thing you need to do is to register your api key
time.phar app:install - This will guide you how to obtain an api key.
On time commands, you can add -p for part of a project name, to filter out the projects when selecting, and -t for a task name to filter.
This command will add working time to a project, and a task on timeharvest.
time.phar time <hours> "<note>"
# You will now come to the project and task selectionwhere <hours> are in the format HH:mm and is a text string
time.phar time 0:35 "#TaskID - Fixing the intial bugs"With -p and -t
time.phar time -p "My home pro" -t design 0:35 "#TaskID - Changing colors"This will add a running clock on a project
time.phar start
# You will now come to the project and task selectiontime.phar starttime.phar start -p "My home pro" -t designThis will stop a running clock on a project.
If there is more than 1 running clock, this will not work, due to its not implemented.
time.phar stoptime.phar stopHere you can get a list of your working time
time.phar dayThis will list for the current day.
time.phar day 2020-02-22This will list for 22nd feb. 2020
time.phar weekThis will list for the current week.
time.phar week 50 2019This will list for week 50 in year 2019
You can add a default project, for a folder - So in this folder it will also choose the same project.
You can also add a default task for global or for a folder. (if the folder configuration is set it will overwrite global)
Set the default project for the current directory
time.phar config:set:project
# You will now come to the project selection -p can also be usedRemove the default project for the current directory
time.phar config:remove:projectSet the default task for the current directory (or if you use -g in the command, it will set the global)
As the task name is pr project, but many sets some default tasks for each project, this will just use a name to filter out the tasks when choosing a project
# For current directory
time.phar config:set:task "Task name"# Global
time.phar config:set:task -g "Task name"Remove the default task for the current directory (or if you -g in the command, it will remove from global)
# For current directory
time.phar config:remove:task# Global
time.phar config:remove:task -gTo validate if your api key is still valid, you can use
time.phar app:validateTODO
To uninstall, you can run this command
time.phar app:uninstallThis will remove the configuration file from your machine.