We are beginning to start a new SharePoint 2010 and 2013 development projects, soon developing new features, lists, workflows, customizations to the SharePoint site, customization to list forms and would like to put good practice (that will help in deployment) in place before going ahead with development.

What is the best way to go about deploying my site from Development to Production?

I am using Visual Studio 2012 and also have Designer 2013...

I have already read that this can be done through powershell, also through visual studio and also via designer. But at this point I am confused as to which are best practices specifically for lists, configurations; workflows; site customizations; Visual studio development features; customization to list forms etc. You can also provide me reference to links/ebook covering this topic.

Thanks in advance for any help.

  • I would recommend writing PowerShell scripts for each and every deployment in Staging and Prod env. from scratch. Its super fast! I have written scripts for automating 30+ site collections with installing/activating a number of features, deploying SP D workflows, deploying WSPs.You just need ISE window and some knowledge in PowerShell to write and see the magic and beauty of PowerShell execution on SP Env.
    – samolpp2
    Oct 28, 2015 at 11:24

1 Answer 1


There are a couple of tools:

By hand: The worst solution, but if you have just a couple of Lists, it's some times the easier to just copy the site via GUI. But its very error-prone.

VisualStudio Solutions: Imo the best way to deploy. Here you can add and populate lists/libraries, create workflows, add CSS and implement Javascript etc.. You can can create versions and the solution can be updated very easily (upload WSP and activate features). Also you can manage the code very easy via TFS.

Powershell: For everything that is not possible with Visual Studio, I would use powershell. Almost everything is possible here.

Javascript: Almost everything that is possible via CSOM at powershell is also possible via JS. For small and quick changes (e.g. adding a custom action) I prefer this. But it's not recommended for complex solutions.

Workflows: You also can add Workflows to make adjustments to your sides. But it's better to make the adjustments via powershell. Workflows are actually not made for updating.

Save site as WSP: You can save site (collection) as a WSP template and than import the whole site. Although it sound very easy it's NOT recommended (this is why MS deactivated that option, but you can reactivate it via SPD). It never really worked, you get a whole bunch of problems along the way. In 9 out of 10 cases it just failed because of some compatability cra* (it normaly just works within the same SharePoint installation).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.