2013/5/3 Eric Sunshine <[email protected]>:
>> 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.
>
> The user intended for files to be removed when invoking git-clean,
> therefore WARNING that git-clean will do what was requested explicitly
> seems overkill. Along the same lines, the user asked explicitly for an
> interactive session (via --interactive), hence the above paragraph is
> effectively redundant since it does little more than tell the user (in
> a lengthy fashion) what he already knows (that the session is
> interactive). The short prompt printed after the listed files says the
> same thing (more succinctly), thus this warning paragraph is
> essentially superfluous.
I will try to make the header short, and not too scary.
>> 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.
>
> What about the user who desires more traditional "rm -i" behavior in
> which he is prompted for each file? Should that be supported with a
> "Prompt [each]" option in the above menu?
I'd like to have a try. Maybe I can borrow code/interface from
git-add--interactive.perl to support both (batch exclude and confirm
one by one). For example:
*** Would remove the following item(s) ***
files to be removed... files to be removed...
files to be removed... files to be removed...
files to be removed... files to be removed...
*** Commands ***
1. [y]es, clean 2. [n]o, quit 3. batch [e]xclude
4.[c]onfirm one by one
What now> e
input ignore patterns>> * ![a-c]*
files to be removed... files to be removed...
files to be removed... files to be removed...
Input ignore patterns>> ENTER
*** Would remove the following item(s) ***
files to be removed... files to be removed...
files to be removed... files to be removed...
*** Commands ***
1. [y]es, clean 2. [n]o, quit 3. batch [e]xclude
4.[c]onfirm one by one
What now> y
Removing ...
Removing ...
> More generally, is this sort of modal edit mode desirable and
> convenient? Can the edit operation be combined with the top-level
> prompt? For example:
>
> % git clean -i
> file1 file2 file3
> file4 file5 file6
> Remove ([y]es, [n]o, [p]rompt, exclusion-list)? file[4-6]
> file1 file2 file3
> Remove ([y]es, [n]o, [p]rompt, exclusion-list)? p
> file1 (y/n/q/!)? y
> file2 (y/n/q/!)? n
> file3 (y/n/q/!)? y
What If there is a file named 'y', and the user want to exclude it,
and press 'y' as a pattern.
--
Jiang Xin
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html