Dear TortoiseSVNers,
We have just seen a case where a file has been lost as a combination of renaming and merging. We must understand how this could happen, so that we can avoid similar situations in the future. What happened: 1 Our "product branch" (think of it as our trunk) was branched, to a branch called the "active signal" branch. 2 A file was renamed in the product branch. 3 The rename was propagated to the active signal branch as part of a merge to keep the branch in sync with the product branch. 4 The file was renamed again in the product branch 5 In the next merge to the active signal branch, only the deletion of the old file was propagated. The corresponding addition of the file with the new name did not happen. (Remember that this is done as a single commit.) 6 The active signal branch was reintegrated to the product branch. As a result of this, the file with its new name in the product branch was deleted. As a result, this file was lost from the head of the repository. For more details, see excerpts from the relevant commits below. Questions: * Why did the merge in step 5) above only merge the deletion, not the addition? * Why did the reintegration in 6) remove the existing (added) file? Please Cc: me on any answers, as I am currently not subscribed to the list. With kind regards Asbjørn Sæbø Excerpts from commits. The file(s) in question are /verification/branches/products/S110_nRF51822/doc/test_result/030_system_level_test_documentation.dox /verification/branches/products/S110_nRF51822/doc/test_result/030_system_test_level.dox (Copy from path: ========================================================== 1) 6095 - Active signal branch branched off from product branch Revision: 6095 Author: nvlsi\hael Date: 29. november 2012 16:33:05 Message: [...] ---- Added : /verification/branches/development/DRGN-740_active_signal (Copy from path: /verification/branches/products/S110_nRF51822, Revision, 6075) ===================================================== 2) 6132 - Rename file in product branch Revision: 6132 Author: nvlsi\svag Date: 6. desember 2012 11:53:28 Message: [...] ---- [...] Added : /verification/branches/products/S110_nRF51822/doc/test_result/030_system_level_test_documentation.dox (Copy from path: /verification/branches/products/S110_nRF51822/doc/test_result/030_tp_report.dox, Revision, 6121) Deleted : /verification/branches/products/S110_nRF51822/doc/test_result/030_tp_report.dox [...] ===================================================== 3) 6186: Merge product branch to active signal branch to keep in sync Revision: 6186 Author: nvlsi\vewe Date: 10. desember 2012 12:58:35 Message: [...] Merge in changes from product branch [...] ---- [...] Added : /verification/branches/development/DRGN-740_active_signal/doc/test_result/030_system_level_test_documentation.dox (Copy from path: /verification/branches/products/S110_nRF51822/doc/test_result/030_system_level_test_documentation.dox, Revision, 6158) Deleted : /verification/branches/development/DRGN-740_active_signal/doc/test_result/030_tp_report.dox [...] ====================================================== 4) 6190 - Rename of a file in the product branch Revision: 6190 Author: nvlsi\svag Date: 10. desember 2012 14:54:24 Message: [...] Renamed a dox-file. ---- Deleted : /verification/branches/products/S110_nRF51822/doc/test_result/030_system_level_test_documentation.dox Added : /verification/branches/products/S110_nRF51822/doc/test_result/030_system_test_level.dox (Copy from path: /verification/branches/products/S110_nRF51822/doc/test_result/030_system_level_test_documentation.dox, Revision, 6132) ====================================================== 5) 6245 - Merge product branch to active signal branch to keep in sync Revision: 6245 Author: nvlsi\sac Date: 11. desember 2012 17:51:16 Message: [...] merged the product branch [...] to active signal branch ---- [...] Modified : /verification/branches/development/DRGN-740_active_signal Deleted : /verification/branches/development/DRGN-740_active_signal/doc/test_result/030_system_level_test_documentation.dox Modified : /verification/branches/development/DRGN-740_active_signal/framework/builds/DragoonTools.manifest [...] !!!!! Note that only the deletion from 6190 was merged, not the addition of the renamed file !!!!!!!! ======================================================== 6) 6279 - Reintegrate active signal branch to product branch Revision: 6279 Author: nvlsi\sac Date: 12. desember 2012 13:38:03 Message: [...] Reintegrate active signal branch to product branch ---- Modified : /verification/branches/products/S110_nRF51822 Deleted : /verification/branches/products/S110_nRF51822/doc/test_result/030_system_test_level.dox Modified : /verification/branches/products/S110_nRF51822/doc/verification/appendix_categorization_labels.dox [...] !!!!! Note that the file renamed in 6190, that should have been added to the active signal branch in 6245, is now deleted from the product branch !!!!!! ======================================================