Title: Content Version for Git
Author: maksonlee
Published: <strong>জুন 15, 2026</strong>
Last modified: জুন 19, 2026

---

প্লাগিন অনুসন্ধান

![](https://ps.w.org/content-version-for-git/assets/banner-772x250.png?rev=3572320)

![](https://ps.w.org/content-version-for-git/assets/icon.svg?rev=3572320)

# Content Version for Git

 তৈরি করেছেন [maksonlee](https://profiles.wordpress.org/maksonlee/)

[Download](https://downloads.wordpress.org/plugin/content-version-for-git.0.1.6.zip)

 * [বিস্তারিত](https://bn.wordpress.org/plugins/content-version-for-git/#description)
 * [রিভিউ](https://bn.wordpress.org/plugins/content-version-for-git/#reviews)
 *  [ইন্সটলেশন](https://bn.wordpress.org/plugins/content-version-for-git/#installation)
 * [ডেভেলপমেন্ট](https://bn.wordpress.org/plugins/content-version-for-git/#developers)

 [Support](https://wordpress.org/support/plugin/content-version-for-git/)

## Description

Content Version for Git stores editable WordPress content snapshots in a configured
GitHub repository. It versions posts, pages, terms, and optionally media metadata
and original media files. Editors can preview, diff, and restore previous versions
from the WordPress admin.

The plugin writes and reads Git objects through the GitHub API. It does not keep
a local Git repository and does not call the git CLI.

Features include:

 * Automatic Git versions for normal post and page saves.
 * Side-by-side content diffs and field diffs.
 * Full restore and content-only restore modes.
 * Deleted Resources view for posts, pages, and tracked media.
 * Restore deleted posts/pages as new drafts and deleted media as new attachments.
 * Optional media metadata and file tracking.
 * Manual import of existing posts, pages, and media.
 * Version store dashboard with branch, latest commit, tracked file count, and GitHub
   version store status.
 * Direct GitHub API commits without a local Git worktree.

### External Services

This plugin connects to GitHub when the “Enable GitHub version store” setting is
enabled and a repository URL, branch, and personal access token are configured.

When enabled, the plugin writes Git commits directly to the configured GitHub repository
using the GitHub API. Commit data may include post/page content, metadata, term 
references, media metadata, and media files if media tracking is enabled.

Create the GitHub repository before configuring the plugin. The repository may be
empty, and the plugin can initialize an empty repository on the first write, but
it does not create GitHub repositories. Use a dedicated repository or a dedicated
branch for this plugin’s version store. Normal version writes preserve unrelated
files on the branch, but Reset GitHub Version Store rewrites the configured branch
history.

For fine-grained personal access tokens, select only the version-store repository
and grant Contents read and write access. Organization repositories may require 
organization approval for the token before the plugin can use it.

The GitHub version store is disabled by default. No data is sent to GitHub unless
a site administrator enables and configures it. Without the GitHub version store,
this plugin does not keep durable local Git versions. GitHub’s terms and privacy
policy apply:

 * https://docs.github.com/en/site-policy/github-terms/github-terms-of-service
 * https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement

## Screenshots

[⌊Content Versions Dashboard showing version store status, settings, import controls,
and GitHub version store configuration.⌉⌊Content Versions Dashboard showing version
store status, settings, import controls, and GitHub version store configuration.⌉[

Content Versions Dashboard showing version store status, settings, import controls,
and GitHub version store configuration.

[⌊Content Versions page for a post with preview, diff, and restore actions.⌉⌊Content
Versions page for a post with preview, diff, and restore actions.⌉[

Content Versions page for a post with preview, diff, and restore actions.

[⌊Side-by-side content diff and field diff view.⌉⌊Side-by-side content diff and 
field diff view.⌉[

Side-by-side content diff and field diff view.

[⌊Deleted Resources list with post, page, and media restore options.⌉⌊Deleted Resources
list with post, page, and media restore options.⌉[

Deleted Resources list with post, page, and media restore options.

## Installation

 1. Upload the plugin files to the `/wp-content/plugins/content-version-for-git/` directory,
    or install the plugin through the WordPress plugins screen.
 2. Activate the plugin through the Plugins screen in WordPress.
 3. Create a dedicated GitHub repository, or choose a dedicated branch in an existing
    repository.
 4. Create a GitHub personal access token that can read and write repository contents
    for that repository.
 5. Open Content Versions > Dashboard.
 6. Configure the GitHub version store and media tracking.
 7. Review any GitHub settings notice. Empty repositories can be initialized by the
    plugin; non-empty repositories should use an existing writable branch.
 8. Use Import Existing Content if you want to add existing posts, pages, and media
    to GitHub.

## FAQ

### Where are Git versions stored?

GitHub is the version store. The plugin reads and writes versions through the GitHub
API without a local Git repository.

### Does this replace WordPress revisions?

No. It adds a Git-backed version history for selected WordPress resources.

### Does the GitHub version store run by default?

No. The GitHub version store is disabled until an administrator enables it and provides
a repository URL, branch, and token. Without GitHub configured, versions are not
durably stored and the plugin does not keep a local Git repository.

### What GitHub repository do I need?

Create the repository in GitHub before configuring the plugin. The repository can
be private or public, but private is strongly recommended because content versions
can include unpublished content, metadata, and media files. The repository may be
empty. If it is empty, the plugin can initialize the configured branch on the first
write.

### Can I use a branch that already has commits?

Yes, but a dedicated repository or dedicated branch is strongly recommended. Normal
version writes use the current branch head as the parent commit and preserve unrelated
files. If the branch already contains Content Version for Git files under `posts/`,`
pages/`, or `media/`, use Rebuild GitHub Index after connecting it to a site that
has not indexed it yet.

### Why should I avoid sharing the branch with other work?

Reset GitHub Version Store rewrites the configured branch to a new empty history.
WordPress content is not deleted, but unrelated files and commits on that branch
will no longer be part of the branch history after reset.

### What token permissions are required?

Use a token that can read and write contents in the selected repository. For fine-
grained personal access tokens, select the version-store repository and grant Contents
read and write access.

### What happens if GitHub API writes fail?

The version is not stored. Configure GitHub before relying on the plugin for durable
version history.

### Are media files stored in Git?

Only when media tracking is enabled. In that mode, referenced media metadata and
files are committed directly to GitHub.

## Reviews

There are no reviews for this plugin.

## ডেভেলপার এবং কন্ট্রিবিউটর

“Content Version for Git” is open source software. The following people have contributed
to this plugin.

কন্ট্রিবিউটর

 *   [ maksonlee ](https://profiles.wordpress.org/maksonlee/)

[Translate “Content Version for Git” into your language.](https://translate.wordpress.org/projects/wp-plugins/content-version-for-git)

### ডেভেলপমেন্ট এ আগ্রহী?

[Browse the code](https://plugins.trac.wordpress.org/browser/content-version-for-git/),
check out the [SVN repository](https://plugins.svn.wordpress.org/content-version-for-git/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/content-version-for-git/)
by [RSS](https://plugins.trac.wordpress.org/log/content-version-for-git/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 0.1.6

 * Moved dashboard action feedback next to the relevant GitHub settings, import,
   rebuild, and reset controls.
 * Replaced the GitHub repository API size display with a version-store content 
   size calculated from tracked GitHub tree blobs.
 * Added status API fields for version-store size while keeping existing size fields
   backward compatible.

#### 0.1.5

 * Fixed first import into an empty GitHub repository when media files require Git
   blob creation.
 * Added GitHub settings checks and notices for missing repositories, empty repositories,
   missing branches, existing version-store branches, and branches that appear to
   contain unrelated content.
 * Documented GitHub repository, branch, token, and reset-history requirements.

#### 0.1.4

 * Clarified that GitHub is the required durable version store.
 * Renamed GitHub-related UI wording to GitHub version store.

#### 0.1.3

 * Tightened restore permissions for full Git version restores.
 * Replaced trusted output wrappers with late escaping for generated admin HTML.
 * Removed runtime shell diff generation from the diff view.

#### 0.1.2

 * Renamed the plugin and package slug for WordPress.org resubmission.

#### 0.1.1

 * Addressed WordPress.org review feedback for asset enqueuing, filesystem locations,
   and plugin metadata.

#### 0.1.0

 * Initial public release candidate.
 * Added Git-backed versions for posts, pages, terms, and optional media resources.
 * Added preview, diff, full restore, and content-only restore.
 * Added Deleted Resources and restore-as-new flows.
 * Added import existing content controls.
 * Added GitHub version store settings.

## মেটা

 *  Version **0.1.6**
 *  শেষ আপডেট করা হয়েছে **6 ঘন্টা আগে**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **7.0**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/content-version-for-git/)
 * ট্যাগ
 * [content](https://bn.wordpress.org/plugins/tags/content/)[git](https://bn.wordpress.org/plugins/tags/git/)
   [Github](https://bn.wordpress.org/plugins/tags/github/)[revisions](https://bn.wordpress.org/plugins/tags/revisions/)
   [version control](https://bn.wordpress.org/plugins/tags/version-control/)
 * টি
 *  [এডভান্সড ভিউ](https://bn.wordpress.org/plugins/content-version-for-git/advanced/)

## Ratings

এখনো কোনো রিভিউ জমা দেওয়া হয়নি।

[Your review](https://wordpress.org/support/plugin/content-version-for-git/reviews/#new-post)

[সব রিভিউ দেখুন](https://wordpress.org/support/plugin/content-version-for-git/reviews/)

## কন্ট্রিবিউটর

 *   [ maksonlee ](https://profiles.wordpress.org/maksonlee/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/content-version-for-git/)