Gogs, version 0.9.146 and older, can be easily migrated to Gitea.
There are some basic steps to follow. On a Linux system run as the Gogs user:
gogs backup. This creates gogs-backup-[timestamp].zip filegogs back later.1.0.x version. Migrating from gogs to any other version is impossible.gogs/custom/conf/app.ini to gitea/custom/conf/app.ini.templates, public from gogs/custom/ to gitea/custom/.gitignore, label, license, locale, readme ingogs/custom/conf, copy them to gitea/custom/options.gogs/data/ to gitea/data/. It contains issue attachments and avatars.gitea web.Rewrite '.ssh/authorized_keys' file.1.1.4 → 1.2.3 → 1.3.4 → 1.4.2 → etc ) to migrate database.Rewrite all update hook of repositories.Rename gogs-repositories/ to gitea-repositories/
Rename gogs-data/ to gitea-data/
In gitea/custom/conf/app.ini change:
FROM:
[database]
PATH = /home/:USER/gogs/data/:DATABASE.db
[attachment]
PATH = /home/:USER/gogs-data/attachments
[picture]
AVATAR_UPLOAD_PATH = /home/:USER/gogs-data/avatars
[log]
ROOT_PATH = /home/:USER/gogs/log
TO:
[database]
PATH = /home/:USER/gitea/data/:DATABASE.db
[attachment]
PATH = /home/:USER/gitea-data/attachments
[picture]
AVATAR_UPLOAD_PATH = /home/:USER/gitea-data/avatars
[log]
ROOT_PATH = /home/:USER/gitea/log
Verify by starting Gitea with gitea web
gitea versionAfter successful migration from gogs to gitea 1.0.x, it is possible to upgrade to the recent gitea version.
Simply download the file matching the destination platform from the downloads page
and replace the binary.
gitea/custom/templatesUpdate the appropriate file from gitea/contrib
with the right environment variables.
For distros with systemd:
/etc/systemd/system/gitea.servicesudo systemctl enable giteasudo systemctl disable gogsFor distros with SysVinit:
/etc/init.d/giteasudo rc-update add giteasudo rc-update del gogs