vvv-custom.yml Files – Show Me Your’s, I’ll Show You Mine

With version 2.0 released of the Varying Vagrant Vagrants project, it is now much easier to configure your local VVV environment to your liking. Adding additional sites that are created and configured with a single command is easy breezy.

Tom Nowell wrote a great breakdown of what is new in version 2.0, and the documentation on the VVV website goes into great detail on the different configuration options available to you. I also recommend reading through the README file for the Custom Site Template repository (which your custom site definitions will most likely use for provisioning instructions). I am not going to cover the changes or the different options or settings in this post, so feel free to read through these links to get up to speed.

My vvv-custom.yml File

Recently, during the 4.7.4 release process, I was helping to test the built package files generated for the maintenance release. In addition to the 4.7.x version being updated, some changes were backported all the way back to the 3.7 branch (currently, the oldest maintained version of WordPress).

I realized that I did not have anything set up for testing older versions of WordPress when I started testing the builds. So, I spent a few minutes expanding my vvv-custom.yml file to accommodate this need.

Here is my current vvv-custom.yml file with some of my personal and work sites removed. In addition to the two default sites (wordpress-default and wordpress-develop), I include a multisite environment, and each WordPress version back to 3.7.

Share Yours

What does your vvv-custom.yml file look like? Do you have any cool tricks worked into yours? Share them below!

Update: Added entry for 4.7.

Removing large files when using git-svn to migrate repositories

Today I was migrating SVN repositories over to GIT using BU’s svn2git utility. I came across one repository that GitHub would not allow me to push because it contained a file that was over 100MB.

After some investigation, I realized that the file it specified was only 25KB. However, at some point in its history it was over 100MB, Because I was pushing the entire commit history for that repository, it was rejecting everything.

The solution is to remove the file entirely from the repository’s history. It took some trial and error for me to find something that worked for me because most snippets relied on history already existing in the origin repository. Here is what worked for me:

git filter-branch --index-filter "git rm -rf --cached --ignore-unmatch path_to_file" HEAD

Hope this helps someone!