aboutsummaryrefslogtreecommitdiffstats
path: root/src/repository.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Move the repo renaming to a method for convenience.Colin Guthrie2014-05-281-0/+34
| | | | This also renames log and marks files.
* Copying files as merge points fails badly.Colin Guthrie2014-05-241-2/+2
| | | | | | | | In our case I svn cp'ed a file from mga3 updates to mga2. With this code in place, this caused a merge of mga3 and mga2 which made the output of mga2 git log very misleading (it had tags and commits from v195 of systemd even tho' we were only shipping v44 there). I don't think we'll lose anything by simply not merging here.
* Add the ability to autocreate repositories.Colin Guthrie2014-05-241-3/+20
| | | | | | | | | In Mageia, we have 13k+ packages and have very strict repo layout. Due to this we want to autocreate repositories when we import packages from subversion to git. This does not really support reloading and continuing etc. but hopefully that is sufficient for our import.
* Stop unintended re-encoding of author names from UTF-8 to ASCIIHEADmasterSebastian Pipping2013-05-191-1/+1
| | | | | | | | | | | | | | | | To see the bug in action, use an author map with umlauts, e.g. nickname = Hällo Wörld from UTF-8 <mail@example.org> and check "git log" after the conversion. What is happening? QByteArray "author" is first decoded as UTF-8 into a QString. That QString is passed to QByteArray::append(const QString &) which internally encodes the QString to ASCII byte data using QString::toAscii(). "git fast-import" expects UTF-8 input from us, so the original QByteArray with UTF-8 content is just what we need.
* Stop unintended re-encoding of author names from UTF-8 to ASCIISebastian Pipping2013-05-171-1/+1
| | | | | | | | | | | | | | | | To see the bug in action, use an author map with umlauts, e.g. nickname = Hällo Wörld from UTF-8 <mail@example.org> and check "git log" after the conversion. What is happening? QByteArray "author" is first decoded as UTF-8 into a QString. That QString is passed to QByteArray::append(const QString &) which internally encodes the QString to ASCII byte data using QString::toAscii(). "git fast-import" expects UTF-8 input from us, so the original QByteArray with UTF-8 content is just what we need.
* Use fastimport.write for the actual commit objects too, so we getUlrich Spörlein2012-11-271-23/+20
| | | | logging when --debug-rules is turned on.
* Merge commit 'refs/merge-requests/20' of gitorious.org:svn2git/svn2git into ↵Torgny Nyblom2012-11-231-2/+13
|\ | | | | | | mr/20
| * Set marks on notes, so fast-load picks up from previous state.Daniel Hagerty2012-10-071-1/+12
| | | | | | | | This should fix the notes upon successive, incremental conversions.
| * Fix timestamps of notes to adhere to git standards by using +0000Ulrich Spörlein2012-05-121-1/+1
| | | | | | | | instead of -0000.
* | Revert "Do not initialize master branch if branches were specified in the ↵Torgny Nyblom2012-08-211-3/+2
| | | | | | | | | | | | ruleset." This reverts commit 2ce7467917ef046dd9abfb1eb5464cd1ee7c7726.
* | Merge commit 'refs/merge-requests/13' of git://gitorious.org/svn2git/svn2git ↵Torgny Nyblom2012-08-211-3/+4
|\ \ | |/ |/| | | into merge-requests/13
| * Do not initialize master branch if branches were specified in the ruleset.Modestas Vainius2011-04-241-2/+3
| |
| * Initialize branches specified in the create repository ruleset.Modestas Vainius2011-04-241-1/+1
| | | | | | | | | | Otherwise, what's the point of that directive. Sometimes repository does not start from the master branch.
* | Remove stray backslash in source code.Nicolás Alvarez2012-04-171-1/+1
| | | | | | | | It completely screws up KDevelop's highlighting...
* | Merge commit 'refs/merge-requests/14' of gitorious.org:svn2git/svn2git into ↵Torgny Nyblom2011-05-081-3/+78
|\ \ | | | | | | | | | merge-requests/14
| * | Add support for adding svn commit info metadata as git notes.Modestas Vainius2011-04-241-3/+78
| |/ | | | | | | | | | | The patch add --add-metadata-notes command line option which is similar to --add-metadata except rather embedding svn commit info into the commit message, it is added as a note for the respective commit.
* | Support 'description' field in the create repository rule.Modestas Vainius2011-04-241-0/+9
|/ | | | Its value is used to fill in repository/description file used by gitweb.
* Use +0000 instead of -0000 for timezone indicator in timestamps.Nicolás Alvarez2011-04-181-2/+2
| | | | | | Git seems to always output +0000, so when filter-branching, every single commit changes hash because dates are changed from - to +0.
* Save deleted branches in a visible namespaceSebastian Pipping2011-04-081-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | - The branch is first created properly and then deleted (line "progress SVN r77 branch config-header = :0 # delete") - Jehan's post-1.0.3 commit 584005f2e26149282aa12c4a0367d250caaf3918 writes a backup of the branches latest ref to refs/backup/ on deletion. Many thanks for that commit! However, in my opinion the problem with the current code is that it makes it much too easy to lose history during the conversion to Git. Without a tag or branch pointing to it the commits will fall off easily, especially if people use "git clone" on the bare Git repository created by svn2git. It would be safer and useful to create visible tags for this, e.g. refs/tags/branch-bugfix17-deleted. My attached patch changes Jehan's code to do just that. Please consider application - this patch really matters to me. If you'd rather have both a ref in refs/backup/ and in refs/tags/ or require a command line option for it I can adjust the patch for you. Thanks for listening,
* Create backup reference before deletion of the original branchJehan Bing2011-03-211-3/+4
| | | | | | Ensure that the backup reference is created before deleting the original branch. As it was, the deletion was executed earlier causing the backup reference to point to a non-existing branch so was not created.
* Fix encoding of author names.Nicolás Alvarez2011-01-291-0/+1
| | | | | | Author names were being properly passed through fromUtf8(), but then sent to a QTextStream using the system's locale. This patch forces the text stream to always use UTF-8.
* Only print warning if it appliesTorgny Nyblom2011-01-151-1/+1
|
* Fix serious performance regression.Nicolás Alvarez2010-12-231-0/+3
| | | | | | | In Repository::commit, don't call startFastImport() if we have nothing to write to the fastImport stream. startFastImport() may start new git-fast-import processes if they were previously killed, so it may be extremely slow to call it frequently if it's not necessary.
* Make sure that there are merges recorded before trying to read the last oneTorgny Nyblom2010-12-211-1/+1
|
* Try and fix cvs2svn multiple merge points for branches and tags.Torgny Nyblom2010-12-211-19/+27
| | | | Might still need some logic for detecting the correct from branch.
* Make the tagging commands visible in the gitlog aswellTorgny Nyblom2010-12-201-6/+6
|
* Only call startFastImport when neededTorgny Nyblom2010-12-161-1/+1
|
* Be more clear about what are warningsTorgny Nyblom2010-12-161-11/+11
|
* Move branch creation/deletion/restting to Repository and write these inTorgny Nyblom2010-12-151-5/+16
| | | | | | commit() Prepare for handling cvs2svn borked tags/branches
* Ditch PrefixingRepository in favor of a memmber variable inTorgny Nyblom2010-12-151-256/+29
| | | | | [FastExport]Repository Some minor reordering
* call startFastImport where it is used.Torgny Nyblom2010-12-131-4/+2
|
* Code styleTorgny Nyblom2010-12-131-1/+2
|
* Make sure fastImport is started before adding fileNiko Sams2010-10-071-0/+1
|
* Unify debug messages and Match structsTorgny Nyblom2010-09-281-1/+1
|
* call startFastImport() in commit()Niko Sams2010-09-241-1/+1
| | | | | | | | This fixes importing large svn commits that get imported into a large number of git repositories. It happened that a process was closed (in ProcessCache::touch) before commit() and so the commit wasn't imported correctly. And remove the touch() call as that is done now in startFastImport()
* touch fastImport process in startFastImport()Niko Sams2010-09-241-0/+2
| | | | | | | This is needed to make sure that not too many processes are running and we run out of ressources. Calling touch only in commit is not enough as startFastImport is called in other functions as createBranch too - and that can result in too many processes.
* add assertions to write() methods to make sure nothing is written into a ↵Niko Sams2010-09-241-0/+8
| | | | closed fast-import
* output repository name that crashed, helpful to know which logs to look atNiko Sams2010-09-241-1/+1
|
* Readd br.marks.last() to various places as a mark of "0" is used to markTorgny Nyblom2010-09-171-4/+4
| | | | | | a branch as deleted. Thanks Raja R Harinath for spotting it.
* Fix assert when br.marks is emptyTorgny Nyblom2010-09-151-1/+1
|
* Make the fastImport into a logging instance, logging is enabled when the ↵Torgny Nyblom2010-09-131-7/+67
| | | | "--debug-rules" flag is active.
* Better log messagesTorgny Nyblom2010-09-091-2/+2
|
* Spaces not tabsTorgny Nyblom2010-09-081-1/+1
|
* Inter branch merging causes git log to break with fatal internal errorsTorgny Nyblom2010-09-081-4/+4
|
* Don't print the same message as in Transaction()Torgny Nyblom2010-09-081-4/+0
| | | | Creation is already printed at the bottom.
* White space cleanup & debug statmentsTorgny Nyblom2010-09-041-121/+141
|
* Merge branch 'master' of git://gitorious.org/svn2git/svn2gitRaja R Harinath2010-08-241-4/+16
|\ | | | | | | | | | | | | | | | | | | | | | | | | The conflict was mainly around two different approaches to fixing the linear commitMarks issue. The precise tracking of commit marks per branch is better, and that's how I resolved the merge conflict. While at it, I also removed the "revision-*" files, since the "log-*" files already have the same information, and the branch information too. Conflicts: src/repository.cpp src/repository.h
| * Merge commit 'refs/merge-requests/1' of ↵Torgny Nyblom2010-08-091-1/+1
| |\ | | | | | | | | | git://gitorious.org/~marcguenther/svn2git/marcguenther-svn2git into integration
| | * Merge branch 'master' of gitorious.org:svn2git/svn2gitMarc Guenther2010-05-061-12/+24
| | |\
| | * | small typo in debug messageMarc Guenther2010-04-201-1/+1
| | | |