Using Sprout
Sprout solves the problem of sharing WordPress content and databases between developers.
With Sprout, you can take snapshots of your project’s WordPress content and database, upload them to a repository, and let your team easily seed a new environment from your snapshot.
Getting the most out of Sprout is simple, but first, let’s look at how it works…
What is a Snapshot?
A snapshot is a copy of your WordPress uploads content and database at any point in time. With Sprout, we can easily create new snapshots, store them in a repository, and then seed a new environment using a stored snapshot.
Snapshots are deduplicated, so creating a new one only stores the changes since your last snapshot - nice and efficient. They’re also encrypted too.
What is a Repository?
A Sprout repository, or “repo”, is the location where Sprout will store your content for your WordPress projects. It can be a simple local folder (for testing purposes), or hosted elsewhere.
You can store multiple projects in a single repo.
Sprout keeps a list of “repository definitions” on your local machine, which tell Sprout exactly how to connect to a repo. You can share these definitions with others in your team to allow them to connect too.
What is a Project?
A project is a WordPress installation containing a sprout.yaml
file.
The sprout.yaml
file describes exactly which version of database uploads content to use when seeding a new environment.
You should always commit your sprout.yaml
file to version control.
What is Seeding?
Seeding is the process of restoring your WordPress uploads and database from a snapshot.
If you’ve cloned a project with a sprout.yaml
file, and you have the repository set up, all you need to do is run sprout seed
.