Skip to content
Back to skills

Fossil Scm Usage

ASecurity

This skill should be used when the user asks to "fossil commit", "fossil branch", "fossil merge", "fossil clone", "fossil sync", "fossil ticket", "fossil stash", "fossil timeline", mentions working with a Fossil repository, asks about Fossil vs Git differences, or needs help with Fossil SCM commands and workflows.

  • 57 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 17, 2026
documentationbashsqlgitdatabasedocumentation

Security analysis

A100/100

Scanned October 17, 2026

npx -y skills add diegosouzapw/awesome-omni-skill --skill fossil-scm-usage --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Fossil Scm Usage?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Fossil Scm Usage
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/diegosouzapw-fossil-scm-usage/badge)](https://www.skillsdirectory.com/skills/diegosouzapw-fossil-scm-usage)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: Fossil SCM Usage
description: This skill should be used when the user asks to "fossil commit", "fossil branch", "fossil merge", "fossil clone", "fossil sync", "fossil ticket", "fossil stash", "fossil timeline", mentions working with a Fossil repository, asks about Fossil vs Git differences, or needs help with Fossil SCM commands and workflows.
version: 1.0.0
---

# Fossil SCM Command Line Reference

Comprehensive guidance for managing projects with Fossil SCM from the command line, covering repository management, commits, branching, multi-user workflows, and the ticketing system.

## Overview

Fossil is a distributed version control system combining source code management with an integrated wiki, ticketing system, and web interface—all in a single executable. Unlike Git, Fossil emphasizes simplicity, autosync by default, and feature-centric branching.

**Key Concepts:**

| Concept | Description |
|---------|-------------|
| Repository | SQLite database file (`.fossil`) containing all project history |
| Working checkout | Directory where files are edited, linked via `fossil open` |
| Artifact | Any versioned item (file, commit, ticket) identified by SHA hash |
| Autosync | Default behavior that automatically pushes/pulls on commit/update |

## Core Differences from Git

Understanding these differences prevents common mistakes:

1. **Autosync is ON by default** - Commits automatically push, updates automatically pull
2. **Branches created during commit** - Use `fossil commit --branch name` not `git checkout -b`
3. **Single repository file** - All history in one `.fossil` SQLite file
4. **Built-in features** - Wiki, tickets, forum included (not separate tools)
5. **No staging area** - All changed files commit together (use `fossil commit file1 file2` for partial)

## Essential Workflows

### Starting a New Project

```bash
fossil init myproject.fossil
mkdir myproject && cd myproject
fossil open ../myproject.fossil
fossil add .
fossil commit -m "Initial commit"
```

### Cloning and Working

```bash
fossil clone https://example.com/repo project.fossil
mkdir work && cd work
fossil open ../project.fossil
```

### Feature Branch Workflow

```bash
# Start feature (creates branch during commit)
fossil commit --branch feature-login -m "Start login feature"

# Work on feature
fossil commit -m "Add login form"
fossil commit -m "Add validation"

# Merge back to trunk
fossil update trunk
fossil merge --integrate feature-login
fossil commit -m "Merged feature-login"
```

### Collaborative Workflow (Autosync)

With autosync enabled (default), collaboration is automatic:

```bash
# Alice commits - automatically pushes
fossil commit -m "Alice's changes"

# Bob updates - automatically pulls Alice's changes
fossil update
```

### Handling Mistakes

```bash
# Move bad commit to "mistake" branch
fossil amend HEAD --branch mistake
fossil amend HEAD --close
fossil update trunk

# Undo last update/merge/revert
fossil undo

# Revert uncommitted changes
fossil revert
```

## Quick Reference

| Task | Command |
|------|---------|
| Create repo | `fossil init repo.fossil` |
| Clone repo | `fossil clone URL repo.fossil` |
| Open repo | `fossil open repo.fossil` |
| Check status | `fossil status` or `fossil changes` |
| Add files | `fossil add file` or `fossil addremove` |
| Commit | `fossil commit -m "msg"` |
| Update | `fossil update` |
| New branch | `fossil commit --branch name` |
| Switch branch | `fossil update branchname` |
| List branches | `fossil branch list` |
| Merge | `fossil merge branchname` |
| Cherry-pick | `fossil merge --cherrypick HASH` |
| View diff | `fossil diff` |
| View history | `fossil timeline` |
| File history | `fossil finfo filename` |
| Annotate/blame | `fossil annotate filename` |
| Stash changes | `fossil stash save -m "msg"` |
| Apply stash | `fossil stash pop` |
| Sync manually | `fossil sync` |
| Push only | `fossil push` |
| Pull only | `fossil pull` |
| Add ticket | `fossil ticket add title "..." status "Open"` |
| Update ticket | `fossil ticket set UUID status "Closed"` |
| Ticket history | `fossil ticket history UUID` |
| List tickets | `fossil ticket show "All Tickets"` |
| Web UI | `fossil ui` |

## Sync and Remote Operations

### Autosync Settings

```bash
# Check current setting
fossil settings autosync

# Enable (default)
fossil settings autosync on

# Disable for manual control
fossil settings autosync off

# Pull only (no auto-push)
fossil settings autosync pullonly
```

### Manual Sync

```bash
fossil sync              # Full sync (push + pull)
fossil push              # Push only
fossil pull              # Pull only
fossil sync --private    # Include private branches
```

### Remote Management

```bash
fossil remote            # Show current remote
fossil remote add URL    # Set default remote
fossil remote list       # List all remotes
```

## Stash Operations

```bash
fossil stash save -m "WIP"     # Save and revert working dir
fossil stash snapshot -m "msg"  # Save but keep working dir
fossil stash list               # List stashes
fossil stash show               # Show most recent as diff
fossil stash pop                # Apply and remove
fossil stash apply              # Apply but keep
fossil stash drop 1             # Delete specific stash
```

## Tags

```bash
# Add during commit
fossil commit --tag v1.0.0 -m "Release"

# Add to existing commit
fossil tag add v1.0.0 HASH

# List tags
fossil tag list

# Remove tag
fossil tag cancel v1.0.0 HASH
```

## Important Settings

| Setting | Description |
|---------|-------------|
| `autosync` | Auto push/pull on commit/update |
| `editor` | Text editor for commit messages |
| `ignore-glob` | Patterns for files to ignore |
| `binary-glob` | Patterns for binary files |
| `case-sensitive` | Case sensitivity for filenames |

```bash
fossil settings                    # List all
fossil settings autosync off       # Set local
fossil settings autosync off --global  # Set global
fossil unset autosync              # Revert to global
```

## Detecting Fossil Repositories

A Fossil working checkout contains either:
- `_FOSSIL_` file (Unix/Linux)
- `.fslckout` file (Windows or when using `--dotfiles`)

Check with: `ls -la _FOSSIL_ .fslckout 2>/dev/null`

## Web Interface

```bash
fossil ui                 # Open local web UI in browser
fossil ui --port 9000     # Specific port
fossil server --port 8080 # External access
```

## Additional Resources

### Reference Files

For comprehensive command documentation with all options and examples:

- **`references/commands.md`** - Complete Fossil command reference including:
  - Repository setup (init, clone, open, close)
  - File operations (add, rm, mv, status)
  - Commit options and amending
  - Branching operations
  - Merging and conflict resolution
  - Ticketing system commands
  - Diff and history commands
  - Undo and revert operations

Consult `references/commands.md` for detailed syntax and options not covered in this quick reference.

## Version Information

Based on Fossil SCM version 2.27. Use `fossil help COMMAND` for authoritative documentation on the installed version.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.