git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v8 00/12] Interactive git clean

From
Jiang Xin <worldhello.net@gmail.com>
Date
May 9, 2013, 17:14 UTC
Message-ID
<cover.1368118918.git.worldhello.net@gmail.com>
In-Reply-To
<CANYiYbEvYXiRE0OeR5vqBAaOFFpJTPBetQbawZD5EcMCj8veFw@mail.gmail.com>
Updates since v7 series:
 * Eliminate global variable "**the_prefix".
 * Save relative paths in del_list.
 * Split 1/10 of v7 into 3 patches for readability.
 * Change orders of patches, thanks to Eric.
 * Update menu and hotkeys with the help of Eric.
Usage:

When the command enters the interactive mode, it shows the files and directories to be cleaned, and goes into its interactive command loop.

The command loop shows the list of subcommands available, and gives a prompt "What now> ". In general, when the prompt ends with a single '>', you can pick only one of the choices given and type return, like this:

    *** Commands ***
      1: clean         2: filter by pattern     3: select by numbers
      4. ask each      5. toggle flags: none    6. quit
      7: help
    What now> 2
You also could say `c` or `clean` above as long as the choice is unique.
The main command loop has 7 subcommands.
clean::
   Start cleaning files and directories, and then quit.
filter by pattern::
   This shows the files and directories to be deleted and issues an
   "Input ignore patterns>>" prompt. You can input space-seperated
   patterns to exclude files and directories from deletion.
   E.g. "*.c *.h" will excludes files end with ".c" and ".h" from
   deletion. When you are satisfied with the filtered result, press
   ENTER (empty) back to the main menu.
select by numbers::
   This shows the files and directories to be deleted and issues an
   "Select items to delete>>" prompt. When the prompt ends with double
   '>>' like this, you can make more than one selection, concatenated
   with whitespace or comma.  Also you can say ranges.  E.g. "2-5 7,9"
   to choose 2,3,4,5,7,9 from the list.  If the second number in a
   range is omitted, all remaining patches are taken.  E.g. "7-" to
   choose 7,8,9 from the list.  You can say '*' to choose everything.
   Also when you are satisfied with the filtered result, press ENTER
   (empty) back to the main menu.
ask each::
  This will start to clean, and you must confirm one by one in order
  to delete items. Please note that this action is not as efficient
  as the above two actions.
toggle flags::
  This lets you change the flags for git-clean, such as -x/-X/-d/-ff,
  and refresh the cleaning candidates list automatically.
quit::
  This lets you quit without do cleaning.
help::
  Show brief usage of interactive git-clean.
Jiang Xin (12):
  git-clean refactor: hold cleaning items in del_list
  git-clean: add support for -i/--interactive
  git-clean: show items of del_list in columns
  git-clean: add colors to interactive git-clean
  git-clean: use a git-add-interactive compatible UI
  git-clean: add filter by pattern interactive action
  git-clean: add select by numbers interactive action
  git-clean: add ask each interactive action
  git-clean refactor: save some options in clean_flags
  git-clean refactor: add wrapper scan_clean_candidates
  git-clean: add toggle flags interactive action
  git-clean: update document for interactive git-clean
 Documentation/config.txt    |    4 +
 Documentation/git-clean.txt |   77 +++-
 builtin/clean.c             | 1019 +++++++++++++++++++++++++++++++++++++++----
 3 files changed, 1023 insertions(+), 77 deletions(-)
-- 
1.8.3.rc1.341.g24a8a0f
Previous: Jiang XinNext: Jiang Xin
Message 21 of 41 in “interactive git clean”
  1. 00/10 interactive git cleanJiang Xin, May 8, 2013
  2. 01/10 Add support for -i/--interactive to git-cleanJiang Xin, May 8, 2013
  3. 02/10 Show items of interactive git-clean in columnsJiang Xin, May 8, 2013
  4. 03/10 Add colors to interactive git-cleanJiang Xin, May 8, 2013
  5. 04/10 git-clean: use a git-add-interactive compatible UIJiang Xin, May 8, 2013
  6. 05/10 git-clean: interactive cleaning by select numbersJiang Xin, May 8, 2013
  7. 06/10 git-clean: rm -i style interactive cleaningJiang Xin, May 8, 2013
  8. 07/10 git-clean: update document for interactive git-cleanJiang Xin, May 8, 2013
  9. 08/10 git-clean refactor: save some options in clean_flagsJiang Xin, May 8, 2013
  10. 09/10 git-clean refactor: wrap in scan_clean_candidatesJiang Xin, May 8, 2013
  11. 10/10 git-clean: change clean flags in interactive modeJiang Xin, May 8, 2013
  12. Junio C HamanoMay 8, 2013
  13. Matthieu MoyMay 12, 2013
  14. Jiang XinMay 13, 2013
  15. Junio C HamanoMay 13, 2013
  16. Matthieu MoyMay 13, 2013
  17. Junio C HamanoMay 8, 2013
  18. Matthieu MoyMay 12, 2013
  19. Junio C HamanoMay 8, 2013
  20. Jiang XinMay 9, 2013
  21. 00/12 Interactive git cleanJiang Xin, May 9, 2013
  22. 01/12 git-clean refactor: hold cleaning items in del_listJiang Xin, May 9, 2013
  23. 02/12 git-clean: add support for -i/--interactiveJiang Xin, May 9, 2013
  24. 03/12 git-clean: show items of del_list in columnsJiang Xin, May 9, 2013
  25. 04/12 git-clean: add colors to interactive git-cleanJiang Xin, May 9, 2013
  26. 05/12 git-clean: use a git-add-interactive compatible UIJiang Xin, May 9, 2013
  27. 06/12 git-clean: add filter by pattern interactive actionJiang Xin, May 9, 2013
  28. 07/12 git-clean: add select by numbers interactive actionJiang Xin, May 9, 2013
  29. 08/12 git-clean: add ask each interactive actionJiang Xin, May 9, 2013
  30. 09/12 git-clean refactor: save some options in clean_flagsJiang Xin, May 9, 2013
  31. 10/12 git-clean refactor: add wrapper scan_clean_candidatesJiang Xin, May 9, 2013
  32. 11/12 git-clean: add toggle flags interactive actionJiang Xin, May 9, 2013
  33. 12/12 git-clean: update document for interactive git-cleanJiang Xin, May 9, 2013
  34. Matthieu MoyMay 12, 2013
  35. Jiang XinMay 13, 2013
  36. Eric SunshineMay 8, 2013
  37. Eric SunshineMay 8, 2013
  38. Junio C HamanoMay 8, 2013
  39. Matthieu MoyMay 12, 2013
  40. Jiang XinMay 13, 2013
  41. Matthieu MoyMay 13, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.