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

[PATCH v5 0/3] interactive git clean

From
Jiang Xin <worldhello.net@gmail.com>
Date
May 3, 2013, 03:49 UTC
Message-ID
<cover.1367551846.git.worldhello.net@gmail.com>

The interactive git clean combines `git clean -n` and `git clean -f` together to do safe cleaning, and has more features.

First it displays what would be removed in columns (so that you can see them all in one screen). The user must confirm before actually cleaning.

    WARNING: The following items will be removed permanently. Press "y"
    WARNING: to start cleaning, and press "n" to abort the cleaning.
    WARNING: You can also enter the "edit" mode, and select items
    WARNING: to be excluded from the cleaning.
      What would be removed...    What would be removed...
      What would be removed...    What would be removed...
    
    Remove (yes/no/Edit) ? 
In this confirmation dialog, the user has three choices:
 * Yes: Start to do cleaning.
 * No:  Nothing will be deleted.
 * Edit (default for the first time): Enter the edit mode.
When the user chooses the edit mode, it would look like this:
    NOTE: Will remove the following items. You can input space-seperated
    NOTE: patterns (just like .gitignore) to exclude items from deletion,
    NOTE: or press ENTER to continue.
    
      What would be removed...    What would be removed...
      What would be removed...    What would be removed...
    
    Input ignore patterns> 

The user can input space-separated patterns (the same syntax as gitignore), and each clean candidate that matches with one of the patterns will be excluded from cleaning.

When the user feels it's OK, presses ENTER and back to the confirmation dialog.
    WARNING: The following items will be removed permanently. Press "y"
    WARNING: to start cleaning, and press "n" to abort the cleaning.
    WARNING: You can also enter the "edit" mode, and select items
    WARNING: to be excluded from the cleaning.
      What would be removed...
    
    Remove (Yes/no/edit) ? 

This time the default choice of the confirmation dialog is "YES". So when user press ENTER, start cleaning.

Jiang Xin (3):
  Add support for -i/--interactive to git-clean
  Show items of interactive git-clean in columns
  Add colors to interactive git-clean
 Documentation/git-clean.txt |  15 ++-
 builtin/clean.c             | 295 +++++++++++++++++++++++++++++++++++++++++---
 2 files changed, 291 insertions(+), 19 deletions(-)
-- 
1.8.3.rc0.364.gc6aefbf
Next: Jiang Xin
Message 1 of 22 in “interactive git clean”
  1. 0/3 interactive git cleanJiang Xin, May 3, 2013
  2. 1/3 Add support for -i/--interactive to git-cleanJiang Xin, May 3, 2013
  3. 2/3 Show items of interactive git-clean in columnsJiang Xin, May 3, 2013
  4. 3/3 Add colors to interactive git-cleanJiang Xin, May 3, 2013
  5. Eric SunshineMay 3, 2013
  6. Jiang XinMay 4, 2013
  7. Eric SunshineMay 5, 2013
  8. Matthieu MoyMay 6, 2013
  9. Eric SunshineMay 6, 2013
  10. 0/7 interactive git cleanJiang Xin, May 6, 2013
  11. 1/7 Add support for -i/--interactive to git-cleanJiang Xin, May 6, 2013
  12. 2/7 Show items of interactive git-clean in columnsJiang Xin, May 6, 2013
  13. 3/7 Add colors to interactive git-cleanJiang Xin, May 6, 2013
  14. 4/7 git-clean: use a git-add-interactive compatible UIJiang Xin, May 6, 2013
  15. 5/7 git-clean: interactive cleaning by select numbersJiang Xin, May 6, 2013
  16. 6/7 git-clean: rm -i style interactive cleaningJiang Xin, May 6, 2013
  17. 7/7 git-clean: update document for interactive git-cleanJiang Xin, May 6, 2013
  18. Jiang XinMay 7, 2013
  19. Jiang XinMay 7, 2013
  20. Junio C HamanoMay 7, 2013
  21. Jiang XinMay 8, 2013
  22. Junio C HamanoMay 3, 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.