[ANNOUNCE] Stacked GIT 0.12

Catalin Marinas catalin.marinas at gmail.com
Wed Aug 31 21:59:56 BST 2011


Stacked GIT 0.12 release is available from http://www.procode.org/stgit/.

StGIT is a Python application providing similar functionality to Quilt
(i.e. pushing/popping patches to/from a stack) on top of GIT. These
operations are performed using GIT commands and the patches are stored
as GIT commit objects, allowing easy merging of the StGIT patches into
other repositories using standard GIT functionality.

The main features in this release:

    * New 'rebase' command to change the base of an StGIT stack
    * New 'hide' and 'unhide' commands to act on the patches in a
series. Additional options were added to 'series' for displaying the
hidden patches
    * New 'sync' command to synchronise same patches in different branches
    * New 'assimilate' command to transform GIT (accidental) commits
at the top of the stack in StGIT patches
    * Re-worked pulling logic to use the branch information stored in
the .git/config file
    * Abbreviation for StGIT commands
    * Correct encoding of the e-mail headers and body
    * Support for importing multipart e-mails and mbox files
    * Configuration read from the GIT config files rather than stgitrc
    * Patch ranges can be specified for 'export'
    * '--missing' option for 'series' to list the patches on a branch
which are missing in current
    * StGIT bash completion script
    * Bug fixes

Acknowledgements (generated with 'git shortlog'):

Catalin Marinas (58):
      Add the 'autobcc' config option
      Clean-up the number of imports in main.py
      Slightly change the multiple patches delete function
      Properly encode the e-mail headers and body
      Properly import qp-encoded e-mail headers
      Add support for multipart messages to import
      Add a trash directory with deleted patches
      Add mbox support to "import"
      Add file renaming support
      Fix the mail import regex to remove the [...PATCH...] text
      Reduce the imports in stgit/main.py
      Update the bash-completion script
      Edit the cover or patch message before e-mail encoding
      Only create a 'From: author' line if needed
      Add a 'sender' configuration option
      Only read the config files when running a command
      Fix a bug in gitmergeonefile.py introduced recently
      Allow 'show' to display many patches
      Add a boundary to parse_patches()
      Complete patch names after a patch (range) option
      Use gitconfig rather than stgirc
      Only print the progress message if on a TTY
      Allow the cloning of branches not under StGIT control
      Fix "series -d" when the patch description is empty
      Flush the stdout in the commit command
      Fix the 'clean' command not to pop all the patches
      Allow ranges for the 'export' command
      Allow patch ranges for the 'pop' command
      Pipe the 'stg help <command>' output through the pager
      Print 'refresh done' before pushing other patches
      Fix a merge case with files added in both heads but different
      Make 'push --undo' safer
      Add the 'sync' command
      Don't always use git-merge-recursive because of speed
      Allow the abbreviation of StGIT commands
      Add the --unapplied option to pick
      Allow the mail command to send unapplied patches as well
      Fix the bash completion when there is no patch applied
      Add '--missing' option to 'series'
      Fix the branch renaming to also rename the reflogs
      Pipe the 'patches --diff' output through the pager
      Indent the example gitconfig file
      Allow e-mail aliases for the "mail" command
      Add option to automatically invoke the interactive merger
      Track the files conflict history
      Fix the displaying of unknown files for 'stg status'
      Synchronise the current patch if none specified for 'sync'
      Hide the test_create_repo output
      Allow a patch range to be specified for 'series'
      '--showbranch' and '--noprefix' options for 'series'
      Add support to hide and unhide patches
      Make the 'series --short' length configurable
      set() is not a builtin function in Python 2.3
      Check for invalid patch names before acting
      Stop the e-mail sending if editor fails
      Escape the quotes in example/gitconfig
      Add extra files to MANIFEST.in
      Release 0.12

Yann Dirson (23):
      Make Series::patch_applied public.
      Optimize stg goto in the pop case.
      Bomb out when --ack and --sign are both passed to "refresh".
      Allows to refresh a non-top applied patch.
      More config examples.
      Create a StgitObject class to factorise code for property handling.
      Document some current bugs and add to the TODO list.
      Add new 'rebase' command.
      Make stgit.config use git-repo-config.
      Add caching to the new config class.
      Move identification of parent branch's remote def up into stack class.
      Allows extraction of information about remotes.
      Basic support for keeping a ref to the parent branch.
      Have 'stg branch --create' record parent information.
      Make 'stg pull' use git-fetch and not git-pull.
      Fixes to doc strings.
      The user does not want to mess with the refspecs.
      Rebase to parent branch after git-fetch in "stg pull".
      Do not return 'origin' as parent remote when there is no such remote.
      Correctly check the pull-does-rebase parameter in 'stg pull'.
      Warn the user when there is no parent information in the config.
      Use FETCH_HEAD to know where to rebase to after pull.
      Use branch.*.stgit.parentbranch for authoritative parent information.

Karl Hasselstr


More information about the git-announce mailing list