MantisBT - CMake
View Issue Details
0010662CMakeCTestpublic2010-05-03 15:062010-05-04 10:11
Ken Moreland 
Brad King 
normalminorhave not tried
closedfixed 
 
 
0010662: CTEST_UPDATE does not completely update with git submodules
When CTEST_UPDATE is run on a git repository that contains submodules, it often reports a conflict in the repository even though no files are edited. The problem occurs when the repository has submodules and the git pull merges a change in the commit SHA of the submodule. The SHA gets updated fine, but the files in the submodule remain at the old commit (as per the expected behavior of git pull). Because the submodule repository is at a different commit than the repository is supposed to be at, the conflict is reported by git status.

The resolution is simple: call git submodule update. However, there is no mechanism in CTest to do this easily. You cannot call it before the CTEST_UPDATE, because you don't have the new SHA yet. You can't call it after CTEST_UPDATE, because by then CTest has already recorded the error. CTEST_UPDATE needs to be able to call git submodule update internally.
See this email thread for a workaround: http://public.kitware.com/pipermail/paraview-developers/2010-April/000690.html [^]
No tags attached.
Issue History
2010-05-03 15:06Ken MorelandNew Issue
2010-05-03 17:48Bill HoffmanStatusnew => assigned
2010-05-03 17:48Bill HoffmanAssigned To => Brad King
2010-05-04 10:11Brad KingNote Added: 0020528
2010-05-04 10:11Brad KingStatusassigned => closed
2010-05-04 10:11Brad KingResolutionopen => fixed

Notes
(0020528)
Brad King   
2010-05-04 10:11   
Fixed:

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=67277bac [^]

We'll include this in CMake 2.8.2.