Delving Deeper into Gitamic: Power and Flexibility Beyond Statamic's Built-In Git Features

Published on by

Delving Deeper into Gitamic: Power and Flexibility Beyond Statamic's Built-In Git Features image

In case you didn't know, Statamic - which is the CMS we use here at Laravel News - has built-in Git support. This makes so much sense for a flat-file CMS because it means that changes can be kept in sync usually without much fuss. Statamic's Git Automation provides you with automatic commits and pushing capabilities right out of the box.

Statamic also has Revisions, which is a purpose-built, opt-in revision management feature. This doesn't build on top of Git's version control, but uses a separate datastore to keep a track of changes.

Both of these are Pro features, which means you'll need Statamic Pro to use them.

If you're a lone wolf running your own site or a handful of client sites, this can help massively to keep things up to date between production and development, which makes fixing pesky bugs much easier - you no longer need to sync databases or worry about missing files.

And Revisions allows you to see what's changed, when and by whom, and roll back if you need to.

But for teams and individuals looking for a higher degree of control over their version control processes, Gitamic, by long-time Laravel developer and Statamic supporter Simon Hamp, has emerged as the essential add-on. Here's a deep dive into how Gitamic's manual controls offer more power and flexibility than Statamic's built-in Git features.

Understanding Statamic's Built-in Version Control Capabilities

Statamic's built-in capabilities provide a fundamental layer of version control. With automatic commits and pushes, when enabled, every change made within the CMS gets logged and pushed to the connected Git repository without user intervention.

With Revisions enabled, every change is logged, and users can view, compare, and revert to previous versions.

Pros:

  • Effortless Version Control: Every change is automatically saved, ensuring nothing is lost.
  • Streamlined Workflow: Content editors and developers can work without needing to worry about the technicalities of version control.
  • Accessible: These features are either completely invisible or within arm's reach, right on the entry edit screen.

Cons:

  • Lack of Granularity: Automatic commits mean that users can't group related changes or provide detailed commit messages.
  • Reduced Oversight: Without manual control, it's challenging to review or bundle changes before pushing them to the main branch or remote repository.
  • Limited Availability: Revisions only work for entries at the moment.
  • Premium Price Point: Both require a Statamic Pro license.

In many cases, Statamic's built-in Git Automation and Revisions will be more than enough for your needs. But on occasion, you may find yourself in a more complex setup that requires more control and flexibility.

Gitamic's Manual Controls: Enhancing Power & Flexibility

1. Commit with Precision:

Gitamic allows users to select specific changes for committing. This is a boon for those who want to make related changes across various parts of a site and then group them into a single commit. This precision helps in better tracking and understanding the evolution of the project.

2. Detailed Commit Messages:

While automatic commits provide convenience, they often lack context. With Gitamic, users can provide detailed commit messages, ensuring that every change has a clear, understandable context for future reference.

3. Review Before Pushing:

Gitamic gives users an opportunity to review in detail all changes before they're pushed. This means users can review, modify, or even revert updates, ensuring only the desired changes make it to the main branch or remote repository.

4. Staging Area:

Gitamic makes full use of Git's staging area, offering users the ability to stage and unstage changes - even at the chunk level, not just at the file level! This is particularly useful when working on larger updates or when collaborating with a team.

Staged changes can easily be reviewed, adjusted, and combined, offering a layer of flexibility not available with automatic commits.

5. Pull Changes with Insight:

Gitamic's manual pull feature allows users to view incoming changes before integrating them, which may help ensure there are no unexpected modifications or potential conflicts.


While Statamic's built-in Git functionalities serve as a great starting point, especially for those new to version control, Gitamic elevates the experience. It provides the control, granularity, and flexibility that power users and teams need to manage their projects effectively.

In essence, Gitamic doesn't just add manual controls—it brings the full power of Git to the Statamic Control Panel, allowing users to harness the best of both worlds. Whether you're a solo developer looking for precision or a team aiming for streamlined collaboration, Gitamic's manual controls are the game-changer you've been waiting for.

Gitamic starts at $49

Eric L. Barnes photo

Eric is the creator of Laravel News and has been covering Laravel since 2012.

Filed in:
Cube

Laravel Newsletter

Join 40k+ other developers and never miss out on new tips, tutorials, and more.

image
Tinkerwell

Version 4 of Tinkerwell is available now. Get the most popular PHP scratchpad with all its new features and simplify your development workflow today.

Visit Tinkerwell
Laravel Forge logo

Laravel Forge

Easily create and manage your servers and deploy your Laravel applications in seconds.

Laravel Forge
Tinkerwell logo

Tinkerwell

The must-have code runner for Laravel developers. Tinker with AI, autocompletion and instant feedback on local and production environments.

Tinkerwell
No Compromises logo

No Compromises

Joel and Aaron, the two seasoned devs from the No Compromises podcast, are now available to hire for your Laravel project. ⬧ Flat rate of $7500/mo. ⬧ No lengthy sales process. ⬧ No contracts. ⬧ 100% money back guarantee.

No Compromises
Kirschbaum logo

Kirschbaum

Providing innovation and stability to ensure your web application succeeds.

Kirschbaum
Shift logo

Shift

Running an old Laravel version? Instant, automated Laravel upgrades and code modernization to keep your applications fresh.

Shift
Bacancy logo

Bacancy

Supercharge your project with a seasoned Laravel developer with 4-6 years of experience for just $2500/month. Get 160 hours of dedicated expertise & a risk-free 15-day trial. Schedule a call now!

Bacancy
Lucky Media logo

Lucky Media

Bespoke software solutions built for your business. We ♥ Laravel

Lucky Media
Lunar: Laravel E-Commerce logo

Lunar: Laravel E-Commerce

E-Commerce for Laravel. An open-source package that brings the power of modern headless e-commerce functionality to Laravel.

Lunar: Laravel E-Commerce
LaraJobs logo

LaraJobs

The official Laravel job board

LaraJobs
Larafast: Laravel SaaS Starter Kit logo

Larafast: Laravel SaaS Starter Kit

Larafast is a Laravel SaaS Starter Kit with ready-to-go features for Payments, Auth, Admin, Blog, SEO, and beautiful themes. Available with Vue and Livewire stacks.

Larafast: Laravel SaaS Starter Kit
SaaSykit: Laravel SaaS Starter Kit logo

SaaSykit: Laravel SaaS Starter Kit

SaaSykit is a Laravel SaaS Starter Kit that comes with all features required to run a modern SaaS. Payments, Beautiful Checkout, Admin Panel, User dashboard, Auth, Ready Components, Stats, Blog, Docs and more.

SaaSykit: Laravel SaaS Starter Kit
Rector logo

Rector

Your partner for seamless Laravel upgrades, cutting costs, and accelerating innovation for successful companies

Rector

The latest

View all →
SQLite Studio is a SQLite Database Explorer image

SQLite Studio is a SQLite Database Explorer

Read article
Running a Single Test, Skipping Tests, and Other Tips and Tricks image

Running a Single Test, Skipping Tests, and Other Tips and Tricks

Read article
View Third-party Relations in model:show - Now Available in Laravel 11.11 image

View Third-party Relations in model:show - Now Available in Laravel 11.11

Read article
Asserting a JSON Response Structure in Laravel image

Asserting a JSON Response Structure in Laravel

Read article
Backpack turns 8 years old, celebrates with 40% discount image

Backpack turns 8 years old, celebrates with 40% discount

Read article
Create a DateTime from a Timestamp With this New Method Coming to PHP 8.4 image

Create a DateTime from a Timestamp With this New Method Coming to PHP 8.4

Read article