OSDN Git Service

09ee76390b6722561e5f286efdf51731cabf82a6
[tortoisegit/TortoiseGitJp.git] / src / TortoiseProc / Commands / SVNRebaseCommand.cpp
1 // TortoiseGit - a Windows shell extension for easy version control\r
2 \r
3 // Copyright (C) 2007-2008 - TortoiseGit\r
4 \r
5 // This program is free software; you can redistribute it and/or\r
6 // modify it under the terms of the GNU General Public License\r
7 // as published by the Free Software Foundation; either version 2\r
8 // of the License, or (at your option) any later version.\r
9 \r
10 // This program is distributed in the hope that it will be useful,\r
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of\r
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
13 // GNU General Public License for more details.\r
14 \r
15 // You should have received a copy of the GNU General Public License\r
16 // along with this program; if not, write to the Free Software Foundation,\r
17 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\r
18 //\r
19 #include "StdAfx.h"\r
20 #include "SVNRebaseCommand.h"\r
21 \r
22 #include "SysProgressDlg.h"\r
23 #include "ProgressDlg.h"\r
24 #include "MessageBox.h"\r
25 #include "RenameDlg.h"\r
26 #include "Git.h"\r
27 #include "ShellUpdater.h"\r
28 #include "rebasedlg.h"\r
29 \r
30 bool SVNRebaseCommand::Execute()\r
31 {\r
32         bool bRet =false;\r
33         \r
34         if(!g_Git.CheckCleanWorkTree())\r
35         {\r
36                 if(CMessageBox::Show(NULL,      IDS_ERROR_NOCLEAN_STASH,IDS_APPNAME,MB_YESNO|MB_ICONINFORMATION)==IDYES)\r
37                 {\r
38                         CString cmd,out;\r
39                         cmd=_T("git.exe stash");\r
40                         if(g_Git.Run(cmd,&out,CP_ACP))\r
41                         {\r
42                                 CMessageBox::Show(NULL,out,_T("TortoiseGit"),MB_OK);\r
43                                 return false;\r
44                         }\r
45 \r
46                 }else\r
47                 {\r
48                         return false;\r
49                 }\r
50         }\r
51 \r
52         CRebaseDlg dlg;\r
53         \r
54         dlg.m_PreCmd=_T("git.exe svn fetch");\r
55         dlg.m_Upstream=_T("remotes/trunk");\r
56 \r
57         if(dlg.DoModal() == IDOK)\r
58         {\r
59                 bRet=true;\r
60         }\r
61         return bRet;\r
62 }\r