views:

68

answers:

2

After doing a subversion merge with a co-worker, my VSeWSS project no longer build correctly. It creates two features for a single webpart feature (before the merge, this didn't happen). If the name of the feature is "MyFeature', VSeWSS always creates a second folder called 'MyFeature_2' and adds it to the solution manifest.

I've tried deleting everything I know to delete: pkg/MyFeature_2, the entry from pkg/manifest.xml, and the incorrect feature id in pkg/solution.xml (which gets generated every time I build the wsp). I've deleted bin/Debug/solution. After that, I have no idea where VSeWSS is getting information telling it to add a second feature.

I've also tried completely removing that feature and re-adding it from scratch, but the same behavior persists. In the WSP view, the 'delete feature' button is enabled for the "true" feature, but disabled for the generated one. however, if I try to delete the true one, it fails and reports a permission error on pkg/MyFeature/.svn/all-wcprops.

Grr.

A: 

It turns out that during the SVN merge, the pkg/MyFeature/feature.xml file got jacked up. A FeatureID was no longer specified, so every time it tried to rebuild, VSeWSS generated a FeatureID for it, which caused it to try and build out the entire feature again, but the folder that existed in the filesystem was in conflict with it. Once I restored the feature.xml for MyFeature, this problem was resolved. Now my problem is that I can't seem to get the package built - there may be a problem retracting the old solution, but that's something different.

Ben Collins
+1  A: 

By default the /pkg directory isn't part of your Visual Studio project. So it doesn't get added to source control. You need to add this as it contains the GUID's for features and if you don't have it you'll find VSeWSS will silently create new GUID's and populate /pkg for you.

Regards, Paul

Paul Andrew