OSDN Git Service

Add no-commit option at merge dialog
[tortoisegit/TortoiseGitJp.git] / src / TortoiseProc / Commands / MergeCommand.cpp
1 // TortoiseSVN - a Windows shell extension for easy version control\r
2 \r
3 // Copyright (C) 2007-2008 - TortoiseSVN\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 "MergeCommand.h"\r
21 #include "git.h"\r
22 #include "MergeDlg.h"\r
23 #include "MessageBox.h"\r
24 \r
25 bool MergeCommand::Execute()\r
26 {\r
27         CMergeDlg dlg;\r
28         if(dlg.DoModal()==IDOK)\r
29         {\r
30                 CString cmd;\r
31                 CString noff;\r
32                 CString squash;\r
33                 CString nocommit;\r
34                 CString msg;\r
35 \r
36                 if(dlg.m_bNoFF)\r
37                         noff=_T("--no-ff");\r
38 \r
39                 if(dlg.m_bSquash)\r
40                         squash=_T("--squash");\r
41 \r
42                 if(dlg.m_bNoCommit);\r
43                         nocommit=_T("--no-commit");\r
44 \r
45                 if(!dlg.m_strLogMesage.IsEmpty())\r
46                 {       \r
47                         msg+=_T("-m \"")+dlg.m_strLogMesage+_T("\"");\r
48                 }\r
49                 cmd.Format(_T("git.exe merge %s %s %s %s %s"),\r
50                         msg,\r
51                         noff,\r
52                         squash,\r
53                         nocommit,\r
54                         dlg.m_VersionName);\r
55 \r
56                 CString output;\r
57                 g_Git.Run(cmd,&output,CP_ACP);\r
58 \r
59                 CMessageBox::Show(NULL,output,_T("TortoiseGit"),MB_OK);\r
60         }\r
61         return false;\r
62 }