1202
1202
svntest.actions.run_and_verify_svn(None, expected_output, [], 'merge',
1203
1203
sbox.repo_url + '/branch', A_path)
1206
def reintegrate_subtree_not_updated(sbox):
1207
"reintegrate subtree not updated"
1211
# Create change on branch 'D_1'
1212
sbox.simple_copy('A/D', 'D_1')
1213
sbox.simple_commit()
1214
sbox.simple_append('D_1/G/pi', "D_1/G pi edit\n")
1215
sbox.simple_append('D_1/H/chi', "D_1/H chi edit\n")
1216
sbox.simple_commit()
1218
# Merge back to 'D' with two subtree merges
1220
"--- Merging r2 through r3 into '"
1221
+ sbox.ospath('A/D/G') + "':\n",
1223
+ sbox.ospath('A/D/G/pi') + "\n",
1224
"--- Recording mergeinfo for merge of r2 through r3 into '"
1225
+ sbox.ospath('A/D/G') + "':\n",
1227
+ sbox.ospath('A/D/G') + "\n"]
1228
svntest.actions.run_and_verify_svn(None, expected_output, [],
1230
sbox.repo_url + '/D_1/G',
1231
sbox.ospath('A/D/G'))
1233
"--- Merging r2 through r3 into '"
1234
+ sbox.ospath('A/D/H') + "':\n",
1236
+ sbox.ospath('A/D/H/chi') + "\n",
1237
"--- Recording mergeinfo for merge of r2 through r3 into '"
1238
+ sbox.ospath('A/D/H') + "':\n",
1240
+ sbox.ospath('A/D/H') + "\n"]
1241
svntest.actions.run_and_verify_svn(None, expected_output, [],
1243
sbox.repo_url + '/D_1/H',
1244
sbox.ospath('A/D/H'))
1245
sbox.simple_commit()
1246
sbox.simple_update()
1248
# Create branch 'D_2'
1249
sbox.simple_copy('A/D', 'D_2')
1250
sbox.simple_commit()
1251
sbox.simple_update()
1253
# Create change on 'D_2'
1254
sbox.simple_append('D_2/G/pi', "D_2/G pi edit\n")
1255
sbox.simple_commit()
1256
sbox.simple_update()
1258
# Create change on 'D'
1259
sbox.simple_append('A/D/G/rho', "D/G rho edit\n")
1260
sbox.simple_commit()
1261
sbox.simple_update()
1263
# Sync merge to 'D_2' (doesn't record mergeinfo on 'D_2/H' subtree)
1265
"--- Merging r5 through r7 into '"
1266
+ sbox.ospath('D_2') + "':\n",
1268
+ sbox.ospath('D_2/G/rho') + "\n",
1269
"--- Recording mergeinfo for merge of r5 through r7 into '"
1270
+ sbox.ospath('D_2') + "':\n",
1272
+ sbox.ospath('D_2') + "\n",
1273
"--- Recording mergeinfo for merge of r5 through r7 into '"
1274
+ sbox.ospath('D_2/G') + "':\n",
1276
+ sbox.ospath('D_2/G') + "\n"]
1277
svntest.actions.run_and_verify_svn(None, expected_output, [],
1279
sbox.repo_url + '/A/D',
1281
sbox.simple_commit()
1282
sbox.simple_update()
1284
# Reintegrate 'D_2' to 'D'
1286
"--- Merging differences between repository URLs into '"
1287
+ sbox.ospath('A/D') + "':\n",
1289
+ sbox.ospath('A/D/G/pi') + "\n",
1291
+ sbox.ospath('A/D/G') + "\n",
1292
"--- Recording mergeinfo for merge between repository URLs into '"
1293
+ sbox.ospath('A/D') + "':\n",
1295
+ sbox.ospath('A/D') + "\n",
1297
+ sbox.ospath('A/D/G') + "\n"]
1298
svntest.actions.run_and_verify_svn(None, expected_output, [],
1300
sbox.repo_url + '/D_2',
1302
sbox.simple_commit()
1303
sbox.simple_update()
1305
# merge to 'D_2'. This merge previously failed with this error:
1307
# svn: E195016: Reintegrate can only be used if revisions 5 through 9 were
1308
# previously merged from [URL]/D_2 to the reintegrate source, but this is
1311
# Missing ranges: /A/D/G:7
1314
"--- Merging differences between repository URLs into '"
1315
+ sbox.ospath('D_2') + "':\n",
1317
+ sbox.ospath('D_2/G') + "\n",
1318
"--- Recording mergeinfo for merge between repository URLs into '"
1319
+ sbox.ospath('D_2') + "':\n",
1321
+ sbox.ospath('D_2') + "\n",
1323
+ sbox.ospath('D_2/G') + "\n"]
1324
svntest.actions.run_and_verify_svn(None, expected_output, [],
1326
sbox.repo_url + '/A/D',
1328
sbox.simple_commit()
1329
sbox.simple_update()
1205
1331
########################################################################
1206
1332
# Run the tests