Docs

v.Latest
Introduction
Core Concepts
Querying Content
Editing
Customizing Tina
Going To Production
Media
Drafts
Guides
Further Reference
Git Co-Authoring - What is it and how do we use it?

TinaCMS simplifies content editing for websites by seamlessly integrating with GitHub. To enhance collaboration and transparency in version control, TinaCMS introduces GitHub Co-Authoring

When users make changes to their site using TinaCMS and click save, the changes are automatically committed to the selected branch of the project's GitHub repository. These commits follow the Pull Request Workflow and are co-authored by the tina-cloud-app entity

Figure: ❌ Bad Example - Who made this change?

The issue here is when you have numerous members of a team making their own respective changes there is no track of who is making what change in GitHub. This is where GitHub Co-Authoring Comes in!

What is Co-Authoring?

Co-authoring is a feature that combines the user’s identity with the tina-cloud-app entity in GitHub commit logs. This ensures that when users commit changes to their TinaCMS projects, both their GitHub account and the tina-cloud-app entity are listed as co-authors.When a user with Co-Authoring enabled makes content edits through TinaCMS, the corresponding Git changes are marked as “Co-authored by tina-cloud-app.”

Figure: ✅ Good Example - I can track down Ben Neoh about this change

Why do we use Co-Authroing at Tina?

Transparency
  • Co-authoring makes it clear that the edits were made with assistance by TinaCMS. This builds trust with the pull request reviewer and other stakeholders, ensuring that changes to the repository were mediated and verified by TinaCMS
  • A co-authored commit also identifies that the specific commit is only a content change - meaning that non-developers will be able to review these commits. If a pull request is only made up of tina-cloud-app commits then it identifies that no javascript/typescript changes were made in this pull request
Collaboration Visibility
  • Adding TinaCMS as a co-author highlights its role in the content creation process, while also recognizing the author of the change. This makes it useful for tracking which edits were made with TinaCMS, and which were not
  • Enabling Co-Authoring identifies which users in a team are using the TinaCMS tool - ultimately making the GitHub commit history more clear as we can see who is making the commit
Platform Promotion
  • Seeing "Co-authored by TinaCMS" in a Git repository serves to build awareness of TinaCMS. Prospective users may notice this usage and try the tool for themselves
Context for Pull Requests
  • "Co-authored by tina cloud app" serves to give reviewers more context, allowing them to differentiate between manual developer edits, and changes made through the TinaCMS platform

How to Enable Co-Authoring?

Want to easily identify who made specific changes in your Team?

  1. Head to Tina Cloud
  2. Click on your profile in the top right corner of the screen | Settings
  3. Fill out the Git Co-author name and email
  4. Select 'Enable co-authoring'
  5. Save Settings

By default, the name and email of the co-author is configured according to your TinaCloud account, but they can be set to any valid name and email address.

Note: The co-author email is publicly viewable on GitHub. If you want to hide your email, GitHub provides an anonymous email address for each user. You can find your anonymous email address in the GitHub email settings. This email address can then be configured in TinaCloud as the co-author.
Last Edited: December 20, 2024