In recent months I’ve really started to like the OfficeDev\PnP initiative on Github.
The following 4 projects give a great start for provisioning sites:
It is now possible to export sites and import sites without the need for any features other than the out of the box features. No need to upgrade features, simply reapply the template after you have made updates and the changes are there.
It is possible to export sites, edit the exported file with any changes you might want to make. Personally I don’t like making many changes within the SharePoint interface and copying for example site collection fields and modifying them manually I find easier.
I use Visual Studio for this and I found that intellisense doesn’t work.
I first found the following folder on my system ( I’m using Visual Studio 2015)
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Xml\Schemas
then created a file called pnp.xml with the following content:
<?xml version="1.0" encoding="utf-8"?> <SchemaCatalog xmlns="http://schemas.microsoft.com/xsd/catalog"> <Schema href="C:\Git\PnP-Provisioning-Schema\OfficeDevPnP.ProvisioningSchema\ProvisioningSchema-2015-05.xsd" targetNamespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema" /> <Schema href="C:\Git\PnP-Provisioning-Schema\OfficeDevPnP.ProvisioningSchema\ProvisioningSchema-2015-08.xsd" targetNamespace="http://schemas.dev.office.com/PnP/2015/08/ProvisioningSchema" /> </SchemaCatalog>
Depending on where you cloned the schema files from https://github.com/OfficeDev/PnP-Provisioning-Schema C:\Git may need to be adjusted in the above.
After the pnp.xml file is put in place I can now find all the parts of the template that aren’t exported with the Get-SPOProvisioningTemplate PowerShell command.