Preserve picked patch name when possible
[stgit.git] / README.md
blob3f9686fb0cd6d0b9723308f3a3ccc26d1e00da8e
1 # Stacked Git
3 Stacked Git, **StGit** for short, is an application for managing Git
4 commits as a stack of patches.
6 With a *patch stack* workflow, multiple patches can be developed
7 concurrently and efficiently, with each patch focused on a single
8 concern, resulting in both a clean Git commit history and improved
9 productivity.
11 For a complete introduction to StGit, see the [Stacked Git
12 homepage](https://stacked-git.github.io).
14 ## Getting started
16 To get a feel for how StGit works, see this brief [example of StGit in
17 action][example]. Or check out the [in-depth tutorial][tutorial].
19 [example]: https://stacked-git.github.io/guides/usage-example
20 [tutorial]: https://stacked-git.github.io/guides/tutorial
22 StGit also has a complete set of [man pages][man] describing the
23 [`stg`][stg] command line tool and each of its subcommands.
25 [man]: https://stacked-git.github.io/man
26 [stg]: https://stacked-git.github.io/man/stg
28 ## Installation
30 See [CHANGELOG.md](CHANGELOG.md) to see what has changed in the latest
31 StGit release.
33 ### Dependencies
35 StGit is written in pure Python with no third-party Python dependencies.
36 StGit supports Python versions >= 3.5.
38 StGit works within the context of a Git repository by running `git`
39 commands. [Git](https://git-scm.com) 2.2.0 or newer is required.
41 ### Package Repositories
43 Recent versions of StGit are available via many package repositories
44 such as [HomeBrew](https://formulae.brew.sh/formula/stgit) and for many
45 Linux distributions including:
46 [Alpine](https://pkgs.alpinelinux.org/packages?name=stgit),
47 [Arch](https://aur.archlinux.org/packages/stgit),
48 [Fedora](https://src.fedoraproject.org/rpms/stgit),
49 [Nix](https://nixos.org/nixos/packages.html?attr=gitAndTools.stgit) and
50 [Ubuntu](https://packages.ubuntu.com/source/focal/stgit).
52 More details about StGit packages availability for various operating
53 systems can be [found on repology][repology].
55 [repology]: https://repology.org/project/stgit/versions
57 ### Source Installation
59 StGit may also be installed from source. Download the [latest
60 release][latest] or clone from the [StGit repository on GitHub][repo].
62 [latest]: https://github.com/stacked-git/stgit/releases/latest
63 [repo]: https://github.com/stacked-git/stgit
65 To install from source, choose a `prefix` and run:
67 ``` shellsession
68 $ make prefix=/usr/local install install-doc
69 ```
71 For more information about installation, see [INSTALL](INSTALL).
73 ## Contributing
75 See [CONTRIBUTING.md](CONTRIBUTING.md) for a full guide to contributing
76 to StGit.
78 ## Maintainers
80 StGit is maintained by Catalin Marinas and Peter Grayson.
82 For a complete list of StGit's authors, see [AUTHORS.md](AUTHORS.md).