These fixes will allow a restore of gitlab when the backups and
repositories directories are in non-standard locations (ie sub-dirs
of gitlabhq). Also allows the restore to be run from script
overriding the need of a user to confirm the rebuild of the
authorized_keys file.
Expand the import glob to include `**/*.git` to find projects in groups
as well as top level projects. Check for existing group, and create
group if needed. Set namespace_id for imported projects.
Since version 4.1, notes.line_code means:
{SHA1 hash of file path}_{old line}_{new line}
but the older version means:
{file index of the commit}_{old line}_{new line}
This rake task migrate the above differences.
It returns "yes" if required version is "1.7.10" and current version is "1.6.10",
because the patch version of current version equals to that of required version.
Most of these are comments but a few are strings for users.
Might be an idea to run this from time to time:
https://github.com/lyda/misspell-check
It runs mostly clean now.
There was an error in the #extract_attributes_from_page method that
caused an exception when checking to see if a page named "Home"
already exists.
The check occurs to handle the renaming of the main index page to
"Home" to match the Gollum standard. If there is already a page
called "Home" then the migrator will leave that page and create
the Index page as usual. Users will need to manually rename their
old "Home" page to something else then rename their "Index" page
to "Home". Fortunately, I would be highly surprised if this case
ever comes up.
I also added more verbosity to the logging so if an error does
occur, it will be easier to track down which Wiki page is causing
the problem.
This commit adds a new Rake task for migrating all of your existing
Wiki content from your database into new Gollum repositories.
The bulk of the logic happens within the `WikiToGollumMigrator`
class which is decently test covered and located in the lib directory.
The new Rake task can be executed by running:
`bundle exec rake gitlab:wiki:migrate`
It will output a nice log of every project that it migrates along
with success or failure messages.
I have used it on my own installation to migrate my Wikis successfully.