<p>I've built a site using Craft, and now, I'd like to be able to create a mirrored development environment. With that, I'd like to be able to make changes and edits to the website that can then be pushed to the main site. I know that craft has these features built in, but I have not been able to understand exactly how to get it to work. Is there someone wonderful on here that can explain how to get it done, or could include a link to another thread that explains?</p>

<p>Thanks in advance!</p>

CC BY-SA 3.0
2017-05-04T23:40:08.543Z
This is a good read, hope it helps! https://nystudio107.com/blog/multi-environment-config-for-craft-cms
Brad
CC BY-SA 3.0
2017-05-05T02:15:41.313Z
This is great, thanks. Clarifying... do I copy the files from the production environment to the staging environment, along with general.php and db.php?
Jesse Winton
CC BY-SA 3.0
2017-05-05T13:39:26.663Z
Depends on your workflow. I use a deployment service that deploys to staging or production based on the branch I push to. I ignore files from being included into the repo branches by using gitignore, things like file uploads, caching, etc. Have a look here: https://gist.github.com/jeromecoupe/5237810
Brad
<multi-environment>
Creating a Dev Environment
# Creating a Dev Environment

(Asked by: username_0 on 2017-05-04)

I've built a site using Craft, and now, I'd like to be able to create a mirrored development environment. With that, I'd like to be able to make changes and edits to the website that can then be pushed to the main site. I know that craft has these features built in, but I have not been able to understand exactly how to get it to work. Is there someone wonderful on here that can explain how to get it done, or could include a link to another thread that explains?

Thanks in advance!

**Tags:** multi-environment
> **Comments:**
> **username_1**: This is a good read, hope it helps! https://nystudio107.com/blog/multi-environment-config-for-craft-cms  
> **username_0**: This is great, thanks. Clarifying... do I copy the files from the production environment to the staging environment, along with general.php and db.php?  
> **username_1**: Depends on your workflow. I use a deployment service that deploys to staging or production based on the branch I push to. I ignore files from being included into the repo branches by using gitignore, things like file uploads, caching, etc. Have a look here: https://gist.github.com/jeromecoupe/5237810  

---

## 0 answers

