Re: [PATCH/RFC] git-gui: disable (un)staging for files with typechange flags

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Dec 6, 2010 at 22:48, Pat Thoyts
<patthoyts@xxxxxxxxxxxxxxxxxxxxx> wrote:
> Bert Wesarg <bert.wesarg@xxxxxxxxxxxxxx> writes:
>
>>This covers also the case for newly added files in the index. Like this:
>>
>> Â Âecho bar >foo
>> Â Âgit add foo
>> Â Ârm foo
>> Â Âln -s bar foo
>>
>>This will result in an state of AT. And for cases where the type change is
>>staged, and the new type was modified after the staging. Like this (cont.):
>>
>> Â Âgit add foo
>> Â Âgit commit -mfoo
>> Â Ârm foo
>> Â Âecho bar >foo
>> Â Âgit add foo
>> Â Âecho baz >foo
>>
>>Will result in an state of TM for foo.
>>
>>Signed-off-by: Bert Wesarg <bert.wesarg@xxxxxxxxxxxxxx>
>>---
>> git-gui.sh | Â Â6 ++++--
>> 1 files changed, 4 insertions(+), 2 deletions(-)
>>
>>diff --git a/git-gui.sh b/git-gui.sh
>>index 38362fa..1bebcf1 100755
>>--- a/git-gui.sh
>>+++ b/git-gui.sh
>>@@ -1993,7 +1993,9 @@ foreach i {
>> Â Â Â Â Â Â Â {MD {mc "Staged for commit, missing"}}
>>
>> Â Â Â Â Â Â Â {_T {mc "File type changed, not staged"}}
>>+ Â Â Â Â Â Â Â{AT {mc "File type changed, old type staged for commit"}}
>> Â Â Â Â Â Â Â {T_ {mc "File type changed, staged"}}
>>+ Â Â Â Â Â Â Â{TM {mc "Staged file type change, modification not staged"}}
>>
>> Â Â Â Â Â Â Â {_O {mc "Untracked, not staged"}}
>> Â Â Â Â Â Â Â {A_ {mc "Staged for commit"}}
>>@@ -3533,8 +3535,8 @@ proc popup_diff_menu {ctxm ctxmmg ctxmsm x y X Y} {
>> Â Â Â Â Â Â Â Â Â Â Â || $current_diff_path eq {}
>> Â Â Â Â Â Â Â Â Â Â Â || {__} eq $state
>> Â Â Â Â Â Â Â Â Â Â Â || {_O} eq $state
>>- Â Â Â Â Â Â Â Â Â Â Â|| {_T} eq $state
>>- Â Â Â Â Â Â Â Â Â Â Â|| {T_} eq $state
>>+ Â Â Â Â Â Â Â Â Â Â Â|| [string match {?T} $state]
>>+ Â Â Â Â Â Â Â Â Â Â Â|| [string match {T?} $state]
>> Â Â Â Â Â Â Â Â Â Â Â || [has_textconv $current_diff_path]} {
>> Â Â Â Â Â Â Â Â Â Â Â set s disabled
>> Â Â Â Â Â Â Â } else {
>
> This seems fine. We do get a warning about an 'unhandled 2 way diff
> marker' when it bumps into the second 'diff --git a/foo b/foo' section
> but I'm not sure anything can be safely done about that.

We had this before, and you have proposed a fix for that ("git-gui:
handle symlink replaced by file"). But as I wrote I have a better and
nicer solution to that specific problem.

Bert

> --
> Pat Thoyts              Âhttp://www.patthoyts.tk/
> PGP fingerprint 2C 6E 98 07 2C 59 C8 97 Â10 CE 11 E6 04 E0 B9 DD
>
>
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]