git-nested Logo
1.2.1-2-gdae756e

Introduction

  • About git-nested
    • What problem does it solve?
    • How it works, in short
    • Who has to install git-nested?
    • Why use it?
    • Where it comes from
    • Next steps
  • Install git-nested
    • Requirements
    • Pick a way to install
      • From PyPI
      • Standalone executable
      • From source, with shell setup
      • From source, by hand
      • From source, editable mode
    • Shell completion
    • Manual page
    • Check the install
    • Next step

Quickstart

  • git-nested in 5 minutes
    • 1. Make an upstream repository
    • 2. Make your project
    • 3. Clone the library into your project
    • 4. Look at the status
    • 5. Change the library in your project
    • 6. Push the change upstream
    • 7. Pull a change from upstream
    • 8. Share your project
    • What next?
  • Everyday tasks
    • Add a repository
    • See where everything stands
    • Get new upstream changes
    • See what you changed
    • Send your changes upstream
    • Work from inside the folder
    • Change a setting
    • Clean up after a failed pull or push
    • Undo

Concepts

  • Glossary
  • How it works
    • The picture
    • The .gitnested file
    • Clone
    • Rebuilding the nested history
    • Pull
    • Push
      • Which branch does push use?
    • What does merge or rebase mean here?
    • Temporary things
    • Clean working tree
    • Your hooks
  • Compared to submodule and subtree
    • Short answer
    • git submodule
    • git subtree
    • Who needs what

git nested command

  • Overview and common options
    • Commands
    • Getting help
    • The <subdir> argument
    • Options for all commands
      • How much it tells you
      • Color
      • Credentials
    • Options many commands share
      • --all and -b
    • Exit status
  • git nested clone
    • What it does
    • Arguments
    • Options
    • Examples
      • A release
      • Only a part of upstream
      • A folder you already have
      • Clone again
    • Notes
    • See also
  • git nested init
    • What it does
    • Arguments
    • Options
    • Examples
      • New code, new upstream
      • No upstream yet
      • A copy of upstream
      • From a submodule
    • Notes
    • See also
  • git nested pull
    • What it does
    • Arguments
    • Options
    • Examples
      • Switch to another branch
      • Keep the upstream history
      • Upstream rewrote its history
      • Move a pin
    • Notes
    • See also
  • git nested push
    • What it does
    • The target branch
    • Arguments
    • Options
    • Examples
      • Look first
      • One commit upstream
      • Tag a release
      • Push a branch you fixed by hand
    • Notes
    • See also
  • git nested fetch
    • What it does
    • Arguments
    • Options
    • Examples
    • Notes
    • See also
  • git nested status
    • What it does
    • Options
    • Examples
    • Output
      • --short
    • See also
  • git nested diff
    • What it does
    • Arguments
    • Options
    • Examples
    • See also
  • git nested branch
    • What it does
    • Arguments
    • Options
    • Examples
    • Branch names
    • Notes
    • See also
  • git nested run
    • What it does
    • Arguments
    • Examples
    • Notes
    • See also
  • git nested commit
    • What it does
    • Arguments
    • Options
    • Examples
    • Notes
    • See also
  • git nested repair
    • What it does
    • Arguments
    • Options
    • Examples
    • Notes
    • See also
  • git nested clean
    • What it does
    • Arguments
    • Options
    • Examples
    • See also
  • git nested config
    • What it does
    • Arguments
    • Keys
    • Examples
    • Notes
  • git nested completion
    • What it does
    • Arguments
    • Setup
  • git nested version
    • What it does
  • Environment variables
    • For development

Configuration

  • The .gitnested file
    • Example
    • TOML
    • Fields
      • remote
      • branch
      • commit
      • parent
      • method
      • squash
      • filter
      • exclude
      • path
      • pin
      • readonly
      • cmdver
    • Level files
    • Line endings
  • .gitnested examples
    • After a clone
    • The smallest file
    • No upstream yet
    • Rebase, keep the upstream commits, never push
    • Only a part of upstream
    • One folder of upstream
    • Pinned to a release
  • git config settings
    • Settings you set
      • nested.verify
      • nested.format
      • user.signingKey
    • Settings git-nested writes
      • nested.<subdir>.branchname
      • remote.<nested-branch>.* and branch.<nested-branch>.*

Guides

  • Resolve conflicts
    • What you see
    • Finish the pull
      • With the rebase method
    • Give up instead
    • Do it all by hand
    • Tips
  • Nest only a part of upstream
    • Leave paths out: --exclude
    • Keep only some paths: --filter
    • One folder: --path
    • Limits
  • Pin a release
    • Track a tag
    • Track the branch, stay at a release
  • Upstream submodules
    • When upstream has submodules
      • Pull
      • Push
    • Replace your own submodule
  • Adopt an existing folder
    • The files match an upstream commit
    • You know the upstream commit
    • You do not know the commit
    • Notes
  • Many nested repositories at once
    • --all
    • One commit for all: --single-commit
    • One branch across all: --all -b
    • Read-only repositories
    • Scripts
  • Squash merges and rebases
    • The problem
    • What git-nested does
    • Fix it for good
    • When it can not be found
    • Avoid it
  • Nested repositories inside nested repositories
    • Level files
    • Pull and push the inner one
    • Pull and push the outer one
    • Status
  • Hooks and signing
    • Hooks
    • Sign-off
    • GPG signing

Architecture

  • Architecture
    • Goals
    • How a command runs
    • Modules
      • Command line: cli/
      • Commands: commands/
      • Core
      • Support
    • Key decisions
      • The command line is data
      • Rebuild the history every time
      • Work in a separate worktree
      • Leave the user’s hooks alone
      • Talk like git
    • Git calls
  • Git call diagrams
    • clone
    • init
    • fetch
    • pull
    • push
    • branch
    • run
    • repair
    • commit
    • status
    • diff
    • clean
    • config
    • version

Contributing

  • Development
    • Setup
    • Making changes
    • Tests
      • The standalone executable
    • Checks
    • Adding a command
    • Commit messages
    • Reporting bugs and security issues
  • Documentation
    • Build
    • Where to write what
    • Layout
    • Writing style
    • Markdown
    • Publishing
git-nested
  • Search


© Copyright Thorsten Klein.

Built with Sphinx using a theme provided by Read the Docs.