blob: 1932cef1551de92443182be75c83670dd03da2ef (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
diff --git a/src/svn.cpp b/src/svn.cpp
index 1aadce9..3d359bb 100644
--- src/svn.cpp
+++ src/svn.cpp
@@ -800,8 +800,13 @@ int SvnRevision::exportInternal(const char *key, const svn_fs_path_change_t *cha
// merge points. This heuristic is fairly useful for tracking
// changes across directory re-organizations and wholesale branch
// imports.
- //
- if (path_from != NULL && prevrepository == repository && prevbranch != branch) {
+ // NOTE(uqs): HACK ALERT! Only merge between head, projects, and user
+ // branches for the FreeBSD repositories. Never merge into stable or
+ // releng, as we only ever cherry-pick changes to those branches.
+ // FIXME: Needs to move into the ruleset ...
+ if (path_from != NULL && prevrepository == repository && prevbranch != branch &&
+ (branch.startsWith("master") || branch.startsWith("head") ||
+ branch.startsWith("projects") || branch.startsWith("user"))) {
if(ruledebug)
qDebug() << "copy from branch" << prevbranch << "to branch" << branch << "@rev" << rev_from;
txn->noteCopyFromBranch (prevbranch, rev_from);
|