Welcome to darca-space-git’s documentation!

Welcome to the documentation for darca-space-git — a Git-integration layer for darca-space-manager.

Project Overview

Darca Space Git

darca-space-git integrates Git operations into space-managed environments from darca-space-manager.

It acts as a high-level bridge between the darca-git Git abstraction and space/file management.

Build Status Deploy Status Codecov Black code style License PyPi GitHub Pages

Features

  • ⛺ Git operations are scoped to logical spaces

  • 🔒 No direct file system access required

  • 🧪 Full test coverage & modular design

  • 💡 Supports dry-run & file-level restore

  • 🔁 Clean separation of Git vs Space responsibilities

Install

Install everything needed:

make install

Usage

from darca_space_git.space_git import SpaceGitManager

git_mgr = SpaceGitManager()
git_mgr.init_repo("myspace")
git_mgr.get_status("myspace")

Run Tests

make test

Run Pre-Commit Hooks

make precommit

Run Everything

make check

Getting Started

Community & Contribution

Contributing to Darca Space Git

We welcome community contributions to darca-space-git!

How to Contribute

  1. Fork the repo

  2. Create a new branch:

    git checkout -b feature/your-feature-name
    
  3. Install the project:

    make install
    
  4. Make changes and validate them:

    make check
    
  5. Open a pull request against main.

Branch Naming

Use semantic naming:

  • feature/… for new functionality

  • fix/… for bug fixes

  • docs/… for doc-only updates

Pull Request Requirements

  • ✅ Pass make check (format, test, lint, docs)

  • 🔍 Be focused and concise

  • 🧪 Include tests for your feature or fix

Tips

  • Use make format to reformat code with Black and isort

  • Dry-run logic is supported in most Git operations — test it!

  • Ask questions or request early feedback anytime 🚀