OSDN Git Service

add ignore
[tortoisegit/TortoiseGitJp.git] / src / TortoiseProc / Commands / RemoveCommand.cpp
index 8b1c882..8c725f7 100644 (file)
@@ -116,5 +116,28 @@ bool RemoveCommand::Execute()
        if (bRet)\r
                CShellUpdater::Instance().AddPathsForUpdate(pathList);\r
 #endif\r
+       int key=CMessageBox::Show(hwndExplorer, _T("File will removed from version control\r\n Do you want to keep local copy"), _T("TortoiseGit"), MB_ICONINFORMATION|MB_YESNOCANCEL);\r
+       if(key == IDCANCEL)\r
+               return FALSE;\r
+\r
+       CString cmd;\r
+       if(key == IDNO)\r
+               cmd=_T("git.exe rm -r -f ");\r
+\r
+       if(key == IDYES)\r
+               cmd= _T("git.exe update-index --force-remove -- ");\r
+\r
+       for(int nPath = 0; nPath < pathList.GetCount(); nPath++)\r
+       {\r
+               CString output;\r
+               if(g_Git.Run(cmd+pathList[nPath].GetGitPathString(),&output))\r
+               {\r
+                       key=CMessageBox::Show(hwndExplorer, output, _T("TortoiseGit"), MB_ICONINFORMATION|MB_OKCANCEL);\r
+                       if(key == IDCANCEL)\r
+                               return FALSE;\r
+\r
+               }\r
+       }\r
+\r
        return bRet;\r
 }\r