summaryrefslogtreecommitdiff
path: root/git-gui
diff options
context:
space:
mode:
authorLibravatar Shawn O. Pearce <spearce@spearce.org>2007-01-20 18:50:14 -0500
committerLibravatar Shawn O. Pearce <spearce@spearce.org>2007-01-21 02:54:16 -0500
commit6b0f3f46293e2f718054e9947e209c0344721a69 (patch)
tree756e3c8bba48a7c399cc324b49498ab69d614316 /git-gui
parentgit-gui: Run git-gc rather than git-repack. (diff)
downloadtgif-6b0f3f46293e2f718054e9947e209c0344721a69.tar.xz
git-gui: Corrected behavior of deleted (but existing in HEAD) files.
Apparently I did not account for the D_ file state. This can occur when a file has been marked for deletion by deleting it from the index, and the file also does not exist in the working directory. Typically this happens when the user deletes the file, hits Rescan, then includes the missing file in the commit, then hits Rescan again. We don't find the file in the working directory but its been removed in the index, so the state becomes D_. This state should be identical with DD. I'm not entirely sure why DD occurs sometimes and D_ others, it would seem like D_ is the state that should be happening instead of DD, leading me to believe there is a quirk in git-gui's state manipulation code. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Diffstat (limited to 'git-gui')
-rwxr-xr-xgit-gui2
1 files changed, 2 insertions, 0 deletions
diff --git a/git-gui b/git-gui
index 95c922b21e..04fdb0c1e7 100755
--- a/git-gui
+++ b/git-gui
@@ -1429,6 +1429,7 @@ proc write_update_indexinfo {fd pathList totalCnt batch msg after} {
switch -glob -- [lindex $s 0] {
A? {set new _O}
M? {set new _M}
+ D_ {set new _D}
D? {set new _?}
?? {continue}
}
@@ -1945,6 +1946,7 @@ foreach i {
{_D i question "Missing"}
{DD i removed "Removed by commit"}
+ {D_ i removed "Removed by commit"}
{DO i removed "Removed (still exists)"}
{DM i removed "Removed (but modified)"}