Launching your site is a lot like building, but Grow performs the heavy-lifting of figuring out exactly what has changed between the last launch and now, and presents you with a diff to confirm the launch before deployment. Grow can launch to a variety of destinations where you can host your web site (such as Google Cloud Storage, Amazon S3, GitHub Pages, Dropbox, Google App Engine – or, you can even write a destination for a custom web server).

In this example, we'll just launch to the "default" destination, which "launches" your site to a local directory on your machine.

This command deploys to a destination named "default", which is configured in podspec.yaml. Run the following command, and Grow will launch the site to a directory ./my-codelab-launch/.

grow deploy default

Now let's change the URLs of our pages and run the deployment command once more. By doing this, you'll be able to see a diff when running grow deploy.

Change the "path" config in /content/pages/_blueprint.yaml to the following:

# /content/pages/_blueprint.yaml
path: /pages/{slug}/

Now, run the deploy command again:

grow deploy default

You can now observe the diff upon deployment. Only affected files are deployed, and any files which are no longer needed are deleted.