aboutsummaryrefslogtreecommitdiffstats
path: root/src/repository.cpp
diff options
context:
space:
mode:
authorTorgny Nyblom <nyblom@kde.org>2012-11-23 15:55:26 +0100
committerTorgny Nyblom <nyblom@kde.org>2012-11-23 15:55:26 +0100
commitc9376cfbe605a5bad26b76d113f9060d5cdf8753 (patch)
tree20a79fbe0121efb0f1cc8fe4957a6ef403a0da47 /src/repository.cpp
parent2baedda2b06277544e3356670fd03e7e020d2abc (diff)
parent8f8d4c770ac4884dc6c7909a342b27b28f23cbd9 (diff)
downloadsvn2git-c9376cfbe605a5bad26b76d113f9060d5cdf8753.tar
svn2git-c9376cfbe605a5bad26b76d113f9060d5cdf8753.tar.gz
svn2git-c9376cfbe605a5bad26b76d113f9060d5cdf8753.tar.bz2
svn2git-c9376cfbe605a5bad26b76d113f9060d5cdf8753.tar.xz
svn2git-c9376cfbe605a5bad26b76d113f9060d5cdf8753.zip
Merge commit 'refs/merge-requests/20' of gitorious.org:svn2git/svn2git into mr/20
Diffstat (limited to 'src/repository.cpp')
-rw-r--r--src/repository.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/repository.cpp b/src/repository.cpp
index 44ec629..4d23cab 100644
--- a/src/repository.cpp
+++ b/src/repository.cpp
@@ -26,7 +26,7 @@
static const int maxSimultaneousProcesses = 100;
-static const int maxMark = (1 << 20) - 1; // some versions of git-fast-import are buggy for larger values of maxMark
+static const int maxMark = (1 << 20) - 2; // some versions of git-fast-import are buggy for larger values of maxMark
class ProcessCache: QLinkedList<Repository *>
{
@@ -271,12 +271,15 @@ void Repository::closeFastImport()
void Repository::reloadBranches()
{
+ bool reset_notes = false;
foreach (QString branch, branches.keys()) {
Branch &br = branches[branch];
if (br.marks.isEmpty() || !br.marks.last())
continue;
+ reset_notes = true;
+
QByteArray branchRef = branch.toUtf8();
if (!branchRef.startsWith("refs/"))
branchRef.prepend("refs/heads/");
@@ -285,6 +288,13 @@ void Repository::reloadBranches()
"\nfrom :" + QByteArray::number(br.marks.last()) + "\n\n"
"progress Branch " + branchRef + " reloaded\n");
}
+
+ if (reset_notes &&
+ CommandLineParser::instance()->contains("add-metadata-notes")) {
+ fastImport.write("reset refs/notes/commits\nfrom :" +
+ QByteArray::number(maxMark + 1) +
+ "\n");
+ }
}
int Repository::markFrom(const QString &branchFrom, int branchRevNum, QByteArray &branchFromDesc)
@@ -674,7 +684,8 @@ void Repository::Transaction::commitNote(const QByteArray &noteText, bool append
QTextStream s(&repository->fastImport);
s << "commit refs/notes/commits" << endl
- << "committer " << QString::fromUtf8(author) << ' ' << datetime << " -0000" << endl
+ << "mark :" << QByteArray::number(maxMark + 1) << endl
+ << "committer " << QString::fromUtf8(author) << ' ' << datetime << " +0000" << endl
<< "data " << message.length() << endl
<< message << endl
<< "N inline " << commitRef << endl