1.6
to 1.8
while skipping 1.7
Some tweaks may be necessary to these instructions if you have a developer setup or update on your local computer instead of a server. Read the installation documentation for more information.
Change into your Kimai directory, then fetch the latest code and install all dependencies:
git fetch --tags
git checkout 1.20.4
You might have to prefix the next commands with sudo
and/or php
(depends on your environment):
Update all composer dependencies:
composer install --no-dev --optimize-autoloader -n
And run the Kimai updater:
bin/console kimai:update
Remember to adjust the file permissions if necessary.
You have to allow PHP (your webserver process) to write to
var/
and it subdirectories.
Here is an example for Debian/Ubuntu (to be executed inside the Kimai directory):
chown -R :www-data .
chmod -R g+r .
chmod -R g+rw var/
chmod -R g+rw public/avatars/
Test Kimai before executing these commands (they are likely not required in a shared-hosting environment).
You probably need to prefix them with sudo
and
the group might be called different than www-data
.
That’s it, Kimai is running the most current version. Enjoy the latest time-tracking features!
Please check with git status
if your directory is without changes, to make sure you really can upgrade.
If the following statement looks different for you, keep on reading:
$ LANG=en_US git status
Not currently on any branch.
nothing to commit, working tree clean
If you experience an issue like this (file name can vary) while performing the git update
:
error: Your local changes to the following files would be overwritten by checkout:
symfony.lock
Please commit your changes or stash them before you switch branches.
It means you have changes in at least one of the files in your installation. This can happen by installation of the additional LDAP packages, or a changed configuration file (which was not meant to be changed).
These changes need to be reverted before the update can be executed.
One possible solution is to use git stash
, which will store your changes in a temporary location.
If that fails for some reason, the other (rather extreme) option is to run git reset --hard
,
which will wipe all local changes.