Skip to main content

Git-Native Storage

Rostyman supports exporting collections to .rosty files and managing them with Git — enabling version control and sharing without any cloud service.

Overview

The Git integration lets you:

  • Export collections as .rosty files (JSON-based, human-readable)
  • Initialize a Git repo, make commits, push, pull, and manage branches
  • Share collections with teammates by sharing a Git repository

Everything runs locally using Git on your machine.

Git Panel

The Git Panel is a slide-out panel accessible from the right sidebar. It provides a visual interface for common Git operations.

Status

Shows the current state of your working directory:

  • Modified, added, and deleted files
  • Staged vs. unstaged changes
  • Current branch name

Branching

  • View all local and remote branches
  • Create new branches
  • Switch between branches
  • Delete merged branches

Committing

  1. Review changed files in the status view
  2. Stage files by clicking the + icon (or Stage All)
  3. Enter a commit message
  4. Click Commit

Push / Pull

  • Push — send local commits to the remote repository
  • Pull — fetch and merge remote changes into your local branch

Configure remotes (e.g., GitHub, Bitbucket, GitLab) through the panel.

History

View the commit log with:

  • Commit hash, author, date
  • Commit message
  • Changed files per commit

Exporting Collections

Collections export as .rosty files — a JSON format containing:

{
"name": "My API",
"requests": [...],
"folders": [...],
"environments": [...],
"variables": [...]
}

These files are designed to be Git-friendly: consistent key ordering and formatting produce clean diffs.

Sharing with a Teammate

A typical workflow for sharing collections via Git:

  1. Export your collection to a .rosty file
  2. Initialize a Git repo (or use an existing one)
  3. Commit and push to a remote repository
  4. Your teammate clones the repo and imports the .rosty file

When either side makes changes, export again, commit, push/pull.

Tips

  • Keep .rosty files in a dedicated repo for clean history
  • Use branches to experiment with API changes without affecting the main collection
  • Environment files can contain secrets — add sensitive environment exports to .gitignore
  • The Git panel requires Git to be installed on your system (git must be in your PATH)