aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/repository.cpp3
-rw-r--r--src/repository.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/src/repository.cpp b/src/repository.cpp
index 0e9226f..76171ab 100644
--- a/src/repository.cpp
+++ b/src/repository.cpp
@@ -120,6 +120,9 @@ Repository::Transaction *Repository::newTransaction(const QString &branch, const
txn->lastmark = revnum;
startFastImport();
+ if (++commitCount % 10000)
+ // write everything to disk every 10000 commits
+ fastImport.write("checkpoint\n");
return txn;
}
diff --git a/src/repository.h b/src/repository.h
index 171b3b7..f971345 100644
--- a/src/repository.h
+++ b/src/repository.h
@@ -76,6 +76,7 @@ private:
QHash<QString, Branch> branches;
QString name;
QProcess fastImport;
+ int commitCount;
void startFastImport();