From: Shawn Pearce <spearce@spearce.org>
To: git@vger.kernel.org
Subject: [ANNOUNCE] pg - A patch porcelain for GIT
Date: Fri, 10 Feb 2006 14:59:14 -0500 [thread overview]
Message-ID: <20060210195914.GA1350@spearce.org> (raw)
I just posted the first public version of pg, a GIT porcelain for
managing patches. Think StGIT, but better in some ways:
Feature Summary:
- Maximum compatibility with other GIT porcelains.
pg was designed to interoperate with core GIT and the other
GIT porcelains as much as possible. GIT favorites like git-am
can be used to modify a pg managed patch, and vice-versa,
and without requiring changes to the other GIT tools.
- Simplified command line user interface.
pg tries to simplify GIT by 'hiding' the index and behaving like
more traditional SCMs which only look at `HEAD` (last commit)
and the working directory (files).
- Preserves change history of patches.
The complete change history associated with each patch is
maintained directly within GIT. By storing the evolution of a
patch as a sequence of GIT commits standard GIT history tools
such as gitk can be used.
- Its prune proof.
The metadata structure is stored entirely within the refs
directory and the object database, which means you can safely use
git-prune without damaging your work, even for unapplied patches.
- Preserves patch series during clone.
The metadata structure used by pg allows git-clone to preserve
the patch series information, without changes required to
git-clone. (Patch series information is not preserved during
git-pull/git-push however.)
- Mix and matching of changes (bug fixes/features).
By maintaining changes as individual patches it is possible to
apply individual changes to the current working directory and
to unapply them just as easily.
- Automatic detection (and cancellation) of returning patches.
pg automatically detects when a patch is received from
the upstream GIT repository during a pg-rebase and deletes
(cancels) the local version of the patch from the patch series.
The automatic cancelling makes it easy to use pg to track and
develop changes on top of a GIT project.
- Fast
pg operations generally perform faster than StGIT operations,
at least on my large (~7000 file) repositories.
And for those so inclined:
Homepage: http://www.spearce.org/projects/scm/pg/
GIT Repository: http://www.spearce.org/projects/scm/pg.git
--
Shawn.
next reply other threads:[~2006-02-10 19:59 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-02-10 19:59 Shawn Pearce [this message]
2006-02-10 20:41 ` [ANNOUNCE] pg - A patch porcelain for GIT Greg KH
2006-02-10 21:04 ` Shawn Pearce
2006-02-10 23:20 ` Greg KH
2006-02-10 21:17 ` Petr Baudis
2006-02-10 21:38 ` Shawn Pearce
2006-02-10 21:47 ` Petr Baudis
2006-02-10 22:07 ` Junio C Hamano
2006-02-13 21:00 ` Petr Baudis
2006-02-14 9:26 ` Catalin Marinas
2006-02-14 10:08 ` Karl Hasselström
2006-02-14 15:22 ` Chuck Lever
2006-02-14 16:07 ` Karl Hasselström
2006-02-14 20:58 ` Chuck Lever
2006-02-14 22:29 ` Petr Baudis
2006-02-15 0:22 ` Sam Vilain
2006-02-15 0:35 ` Shawn Pearce
2006-02-15 1:14 ` Petr Baudis
2006-02-15 4:11 ` J. Bruce Fields
2006-02-15 6:54 ` Shawn Pearce
2006-02-15 19:45 ` J. Bruce Fields
2006-02-16 10:24 ` Junio C Hamano
2006-02-16 10:33 ` Catalin Marinas
2006-02-16 10:42 ` Fernando J. Pereda
2006-02-16 10:52 ` Junio C Hamano
2006-02-16 11:10 ` Catalin Marinas
2006-02-15 17:25 ` Catalin Marinas
2006-02-16 7:54 ` Karl Hasselström
2006-02-17 4:27 ` [PATCH 0/2] stg uncommit Karl Hasselström
2006-02-17 4:31 ` [PATCH 1/2] Update .git/refs/heads/base after patch deletion Karl Hasselström
2006-02-17 4:31 ` [PATCH 2/2] Add 'stg uncommit' command Karl Hasselström
2006-02-19 10:51 ` Catalin Marinas
2006-02-19 13:45 ` Karl Hasselström
2006-02-19 14:47 ` Karl Hasselström
2006-02-19 21:15 ` Sam Vilain
2006-02-20 17:20 ` Catalin Marinas
2006-02-20 17:30 ` Karl Hasselström
2006-02-20 22:49 ` Catalin Marinas
2006-02-21 7:55 ` Karl Hasselström
2006-02-15 10:11 ` [ANNOUNCE] pg - A patch porcelain for GIT Karl Hasselström
2006-02-15 10:42 ` Andreas Ericsson
2006-02-15 11:25 ` Karl Hasselström
2006-02-15 11:27 ` Karl Hasselström
2006-02-17 21:57 ` Catalin Marinas
2006-02-13 2:49 ` Sam Vilain
2006-02-13 3:29 ` Shawn Pearce
2006-02-13 4:40 ` Sam Vilain
2006-02-13 6:03 ` Shawn Pearce
2006-02-13 14:40 ` Catalin Marinas
2006-02-14 4:56 ` Shawn Pearce
2006-02-14 6:14 ` Shawn Pearce
2006-02-15 17:20 ` Catalin Marinas
2006-02-15 17:12 ` Catalin Marinas
2006-02-15 17:55 ` Shawn Pearce
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060210195914.GA1350@spearce.org \
--to=spearce@spearce.org \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).