expandedfronts / revisr

Revisr: Git for WordPress
https://revisr.io
GNU General Public License v3.0
195 stars 41 forks source link
git revisr wordpress

Revisr

Contributors: ExpandedFronts Tags: revisr, git, git management, revision tracking, revision, backup, database, database backup, database plugin, deploy, commit, bitbucket, github, version control Requires at least: 3.9.2 Tested up to: 4.3.1 Stable tag: trunk License: GPLv3 License URI: http://www.gnu.org/licenses/gpl.html

A simple plugin for managing your WordPress website with Git.

Description

Revisr allows you to manage your WordPress website with a Git repository. With Revisr, you can:

A must have plugin for deploying and managing WordPress using Git repositories.

Installation

Requirements

Instructions

Notes

Please verify that database backups are working before attempting to revert the database, especially if attempting to do so on a production website. Backups use the mysqldump command, supported by most hosts/environments.

If you're using the HTTPS method to connect to the remote repository, the password for the remote repository will be stored in the '.git/config' file. You should take steps to prevent this from being publicly accessible. The following code added to a '.htaccess' file in the '.git/' directory will prevent public access:

content: Deny from all

If you're using NGINX, you'll have to update your configuration file with something similar to the following: location ~ path/to/your-repo/.git { deny all; }

This issue can be avoided entirely by using SSH to authenticate, which is recommended in most cases. If using SSH, you will need to generate a SSH key on the server and add it to the remote repository (Bitbucket and Github both support SSH).

It is also adviseable to add Revisr to the .gitignore file via the settings page to make sure that reverts don't rollback any new functionality.

Frequently Asked Questions

How does Revisr handle the database?

You have complete control, and can decide whether you want to track the entire database, just certain tables, or if you don't want to track the database at all. Then, during a backup, the tracked database tables are exported via "mysqldump". When importing or restoring the database to an earlier commit, Revisr first takes a backup of the existing database, creating a restore point from immediately before the import that can be reverted to if needed.

You can also set a "Development URL" that will be automatically replaced in the database during import- allowing for backups and restores that work on both your dev and live environments.

Why aren't my commits being pushed to Bitbucket/GitHub?

This is either an authentication issue or the remote branch is ahead of yours.

Can I damage my site with this plugin?

Care should be taken when dealing with upgrades that depend on the database. Taking verified backups before and after major changes is always recommended.

Screenshots

1. The main dashboard of Revisr.

1. The main dashboard of Revisr.

2. Simple staging area that lets you decide what gets committed.

2. Simple staging area that lets you decide what gets committed.

3. Easily view changes in files with Revisr's diffs.

3. Easily view changes in files with Revisr's diffs.

4. A comprehensive history of your website, with unlimited restore points.

4. A comprehensive history of your website, with unlimited restore points.

Changelog

2.0.2 - December 9, 2015

2.0.1 - October 30, 2015

2.0 - October 27, 2015

1.9.5

1.9.4

1.9.3

1.9.2

1.9.1

1.9

1.8.3

1.8.2

1.8.1

1.8

1.7.2

1.7.1

1.7

1.6.3

1.6.2

1.6.1

1.6

1.5.2

1.5.1

1.5

1.4.1

1.4

1.3.2

1.3.1

1.3

1.2.1

1.2

1.1

1.0.2

1.0.1

1.0