git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jon Seymour <jon.seymour@gmail.com>
To: git@vger.kernel.org
Cc: j6t@kdbg.org, gitster@pobox.com, Jon Seymour <jon.seymour@gmail.com>
Subject: [PATCH v6 0/9] detached-stash: regularise handling of stash arguments by git stash
Date: Sat, 21 Aug 2010 14:08:55 +1000	[thread overview]
Message-ID: <1282363744-4924-1-git-send-email-jon.seymour@gmail.com> (raw)

This patch introduces a common flags and revision parsing function to the following git stash commands:
 * apply
 * branch
 * pop
 * drop
 * show

With these changes, git stash now:
 * allows non-stash log entry references to passed to 'stash branch' provided they are stash-like
 * relaxes the requirement that a stash log currently entry exists for 'stash show' or 'stash branch' 
 * does not attempt to drop the specified revision if it doesn't look like a stash log entry reference
 * fails 'stash pop' and 'stash drop' early if the specified revision is not a stash log entry reference
 * fails early if more than one stash-like commit is specified
 * fails early if the specified revision is of the form ref@{n} and ref exists, but ref@{n} does not exist
 * reports various error conditions that can occur across multiple commands with consistent error messages.

The implementation of several commands is simplified to a lesser or greater degree by taking
advantage of the new common parsing and validation function, parse_flags_and_rev(). 

This revision incorporates feedback and corrections from Johannes Sixt and Junio Hamano. 

Version 5 differed from Version 4 by introducing a common parsing function and refactoring to
take advantage of that.

Version 6 differs from Version 5 by cleaning up and rationalising the new tests and splitting
out a commit (2/9) that is only required to work around an issue with git rev-parse. 

2/9 of this series may be elided if this series is applied on top of the series:

   "rev-parse: improve reporting of invalid log references"

Jon Seymour (9):
  detached-stash: introduce parse_flags_and_revs function
  detached-stash: work around git rev-parse failure to detect bad log refs
  detached-stash: simplify stash_apply
  detached-stash: simplify stash_drop
  detached-stash: refactor git stash pop implementation
  detached-stash: simplify git stash branch
  detached-stash: simplify git stash show
  detached-stash: tests of git stash with stash-like arguments
  detached-stash: update Documentation

 Documentation/git-stash.txt |   16 ++-
 git-stash.sh                |  223 ++++++++++++++++++++++++++++---------------
 t/t3903-stash.sh            |  112 ++++++++++++++++++++++
 3 files changed, 268 insertions(+), 83 deletions(-)

-- 
1.7.2.1.110.g34f32

             reply	other threads:[~2010-08-21  4:09 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-21  4:08 Jon Seymour [this message]
2010-08-21  4:08 ` [PATCH v6 1/9] detached-stash: introduce parse_flags_and_revs function Jon Seymour
2010-08-21  4:46   ` [PATCH v6a " Jon Seymour
2010-08-21  4:08 ` [PATCH v6 2/9] detached-stash: work around git rev-parse failure to detect bad log refs Jon Seymour
2010-08-21  4:48   ` [PATCH v6a " Jon Seymour
2010-08-21  4:08 ` [PATCH v6 3/9] detached-stash: simplify stash_apply Jon Seymour
2010-08-21  4:08 ` [PATCH v6 4/9] detached-stash: simplify stash_drop Jon Seymour
2010-08-21  4:09 ` [PATCH v6 5/9] detached-stash: refactor git stash pop implementation Jon Seymour
2010-08-21  4:09 ` [PATCH v6 6/9] detached-stash: simplify git stash branch Jon Seymour
2010-08-21  4:09 ` [PATCH v6 7/9] detached-stash: simplify git stash show Jon Seymour
2010-08-21  4:09 ` [PATCH v6 8/9] detached-stash: tests of git stash with stash-like arguments Jon Seymour
2010-08-21  4:09 ` [PATCH v6 9/9] detached-stash: update Documentation Jon Seymour

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

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1282363744-4924-1-git-send-email-jon.seymour@gmail.com \
    --to=jon.seymour@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=j6t@kdbg.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.
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 NNTP newsgroup(s).