git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Yann Dirson <ydirson@altern.org>
To: Catalin Marinas <catalin.marinas@gmail.com>
Cc: GIT list <git@vger.kernel.org>
Subject: Collection of stgit issues and wishes
Date: Fri, 8 Dec 2006 23:17:44 +0100	[thread overview]
Message-ID: <20061208221744.GA3288@nan92-1-81-57-214-146.fbx.proxad.net> (raw)

Here is the remaining of my queue of stgit issues and ideas noted
in the last months.  A number of items in the "wishlist" section is
really here to spawn discussion.  Maybe some of them should end up
in the TODO list.

bugs:

- "show" still shows previous patch, after pushing resulted in empty patch
(after solving conflict, when "refresh" then has nothing to do)
- "stg import" leaves empty patch on the stack after failed patch application
- "push --undo" should restore series order
- "import --strip" is too eager (eg. eats numeric prefix when we only
want to strip a .diff suffix).  Probably better symetry with export
flags would be useful.
- "push" fails with "Unknown patch name:" when asked to push a patch
already applied
- "stg fold" usage does not tell what <file> is used for
- "patches -d" may be confused by files added then removed (below,
file added to platform-v0, removed in rm-junk, problem encountered on
2006-08-14, probably on 0.10):
|$ stg patches include/linux/mtd/nand.h.old
|platform-v0
|ieee-lct-bouton
|rm-junk
|$ stg patches include/linux/mtd/nand.h.old -d
|-------------------------------------------------------------------------------
|platform-v0
|-------------------------------------------------------------------------------
|Kernel for V0 platform
|---
|
|stg patches: ['git-diff-tree', '-p',
|'7a9c28b56f5f210e11632388ffb554ae2cb04492',
|'a8e874d6090bc6274cadcff64faf7cff151b9b5c', 'include/linux/mtd/nand.h.old']
|failed (fatal: ambiguous argument 'include/linux/mtd/nand.h.old': unknown
|revision or path not in the working tree.
|Use '--' to separate paths from revisions)

usability problems:

- "refresh" should display .git/conflicts if any ?
- patches/*/*.log branches could be better named as patchlogs/*/*
(easier to filter reliably)
- "stg show" should catch inexistant patch instead of saying "Unknown
revision: that-patch^{commit}"
- "clean" should give enough info for the user to locate any problem
(eg. conflict with files removed from revision control), eg. with a
"popping to ..." message
- "stg fold" should allow to pass -C<n> to git-apply: context mismatch
currently makes folding unnecessarily hard
|$ stg show d-lessdebug | filterdiff -#3 | stg fold
|Folding patch from stdin...stg fold: Patch does not apply cleanly
|$ stg show d-lessdebug | filterdiff -#3 | patch -p1
|patching file drivers/ieee1394/gp2lynx.c
|Hunk #1 succeeded at 2074 with fuzz 2 (offset -96 lines).
- "stg pick patch@branch" needs non-intuitive "stg push --undo" to cancel :
add "stg pick --undo ?"
- "stg pick --fold" needs even less-intuitive "stg push --undo && stg
push" or "stg status --reset"


wishlist and wild ideas:

- lacks syntax for "(n) patches before/after X"
- "stg goto <current>" causes IndexError exception
- needs series logging in addition to patch logging
- "stg pull --undo" to move the stack base back to previous place
(esp. useful after "push" detected a conflict we don't want to handle
right now)
- single-arg "stg rename" to rename current patch ?
- lacks undo for "pick --fold"
- "sink" or "burry" as opposite to "float" (possibly with a target
patch)
- lacks "pick --patch=XXX" to pick by name
- "stg clean" could take a list of patches, to allow being used in scripts
- "stg fold" lacks --reverse
- interactive merge tools could only be called automatically after
failed merge, instead of requiring not-so-intuitive "resolved -i"
- needs a config example to call ediff via gnuserv (possibly sending
several merges at a time, making use of the session registry)
- shortcuts (st -> status, etc.), possibly making use of the git alias
system ?
- "stg fold" should allow to run a merge (insert conflict markers, or
even just output a .rej patch somewhere)
- support for atomicity of complex transactions (stg begin/snapshot,
rollback, commit/finish - possibly with a transaction name so nesting would
just work)
- support for pure patch reordering when a move causes conflicts.
Maybe a way to start a transaction while declaring the patch range
which has to be reordered, ensuring that finalising the transaction
would end with the desired tree state unchanged.
- mark patches as deactivated (float above all unapplied ones), so
even "push -a" would not push them
- "stg diff" should allow to use diff flags like -w or -b (GIT_DIFF_OPTS
does not work)

             reply	other threads:[~2006-12-08 22:19 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-12-08 22:17 Yann Dirson [this message]
2006-12-08 22:27 ` Collection of stgit issues and wishes Jakub Narebski
2006-12-10  8:55   ` Jakub Narebski
2006-12-10 11:06     ` Jakub Narebski
     [not found]       ` <b0943d9e0612100831t7b79d4b1p436de5dbb813e51a@mail.gmail.com>
2006-12-10 17:01         ` Jakub Narebski
2006-12-10 22:26           ` Catalin Marinas
2006-12-10 23:02             ` Jakub Narebski
2006-12-10 23:24               ` Catalin Marinas
2006-12-10 23:37                 ` Jakub Narebski
2006-12-11 12:59                   ` Catalin Marinas
2006-12-21 11:39                     ` Jakub Narebski
2006-12-11 18:41               ` Yann Dirson
2006-12-13 22:14                 ` Catalin Marinas
2006-12-21 23:48                   ` Jakub Narebski
2006-12-10 16:25 ` Catalin Marinas
2006-12-17 23:15   ` Yann Dirson
2006-12-12  9:43 ` Catalin Marinas
2006-12-12 10:02   ` Jakub Narebski
2006-12-13  7:22   ` David Kågedal
2006-12-13 10:20     ` Andreas Ericsson
2006-12-13 11:03       ` Karl Hasselström
2006-12-17 23:21         ` Yann Dirson

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=20061208221744.GA3288@nan92-1-81-57-214-146.fbx.proxad.net \
    --to=ydirson@altern.org \
    --cc=catalin.marinas@gmail.com \
    --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).