{ ShellMenuFetch, MENUFETCH, IDI_PULL, IDS_MENUFETCH, IDS_MENUFETCH,\r
ITEMIS_INSVN, 0, ITEMIS_FOLDERINSVN, 0, 0, 0, 0, 0 },\r
\r
- { ShellMenuPush, MENUPUSH, IDI_PUSH, IDS_MENUPUSH, IDS_MENUPULL,\r
+ { ShellMenuPush, MENUPUSH, IDI_PUSH, IDS_MENUPUSH, IDS_MENUPUSH,\r
ITEMIS_INSVN, 0, ITEMIS_FOLDERINSVN, 0, 0, 0, 0, 0 },\r
\r
// { ShellMenuCheckout, MENUCHECKOUT, IDI_CHECKOUT, IDS_MENUCHECKOUT, IDS_MENUDESCCHECKOUT,\r
// { ShellMenuUpdate, MENUSUBUPDATE, IDI_UPDATE, IDS_MENUUPDATE, IDS_MENUDESCUPDATE, \r
// ITEMIS_INSVN, 0, ITEMIS_FOLDERINSVN, 0, 0, 0, 0, 0 },\r
\r
+ { ShellSeparator, ITEMIS_GITSVN, 0, 0, 0, 0, 0, 0, 0},\r
\r
{ ShellMenuCommit, MENUCOMMIT, IDI_COMMIT, IDS_MENUCOMMIT, IDS_MENUDESCCOMMIT,\r
ITEMIS_INSVN, 0, ITEMIS_FOLDERINSVN, 0, 0, 0, 0, 0 },\r
\r
+ { ShellMenuGitSVNDCommit, MENUSVNDCOMMIT, IDI_COMMIT, IDS_MENUSVNDCOMMIT, IDS_MENUSVNDCOMMIT_DESC,\r
+ ITEMIS_INSVN|ITEMIS_GITSVN, 0, ITEMIS_FOLDERINSVN|ITEMIS_GITSVN, 0, 0, 0, 0, 0 },\r
+\r
+ { ShellMenuGitSVNRebase, MENUSVNREBASE, IDI_REBASE, IDS_MENUSVNREBASE, IDS_MENUSVNREBASE_DESC,\r
+ ITEMIS_INSVN|ITEMIS_ONLYONE|ITEMIS_GITSVN, 0, ITEMIS_FOLDER|ITEMIS_FOLDERINSVN|ITEMIS_ONLYONE|ITEMIS_GITSVN, 0, 0, 0, 0, 0},\r
+\r
{ ShellSeparator, 0, 0, 0, 0, 0, 0, 0, 0},\r
\r
{ ShellMenuDiff, MENUDIFF, IDI_DIFF, IDS_MENUDIFF, IDS_MENUDESCDIFF,\r
{ ShellMenuRefLog, MENUREFLOG, IDI_LOG, IDS_MENUREFLOG, IDS_MENUDESCREFLOG,\r
ITEMIS_INSVN|ITEMIS_ONLYONE|ITEMIS_EXTENDED, ITEMIS_ADDED, ITEMIS_FOLDER|ITEMIS_FOLDERINSVN|ITEMIS_ONLYONE|ITEMIS_EXTENDED, ITEMIS_ADDED, ITEMIS_FOLDERINSVN|ITEMIS_ONLYONE|ITEMIS_EXTENDED, ITEMIS_ADDED, 0, 0 },\r
\r
+ { ShellMenuRefBrowse, MENUREFBROWSE, IDI_REPOBROWSE, IDS_MENUREFBROWSE, IDS_MENUDESCREFBROWSE,\r
+ ITEMIS_INSVN|ITEMIS_ONLYONE|ITEMIS_EXTENDED, ITEMIS_ADDED, ITEMIS_FOLDER|ITEMIS_FOLDERINSVN|ITEMIS_ONLYONE|ITEMIS_EXTENDED, ITEMIS_ADDED, ITEMIS_FOLDERINSVN|ITEMIS_ONLYONE|ITEMIS_EXTENDED, ITEMIS_ADDED, 0, 0 },\r
+\r
+\r
// { ShellMenuRepoBrowse, MENUREPOBROWSE, IDI_REPOBROWSE, IDS_MENUREPOBROWSE, IDS_MENUDESCREPOBROWSE,\r
// ITEMIS_ONLYONE, 0, ITEMIS_FOLDERINSVN|ITEMIS_ONLYONE, 0, 0, 0, 0, 0 },\r
\r
{\r
itemStatesFolder |= ITEMIS_SUBMODULE;\r
}\r
+ if (askedpath.HasGitSVNDir())\r
+ {\r
+ itemStatesFolder |= ITEMIS_GITSVN;\r
+ }\r
if (status == git_wc_status_ignored)\r
itemStatesFolder |= ITEMIS_IGNORED;\r
itemStatesFolder |= ITEMIS_FOLDER;\r
svnCmd += _T("\"");\r
break;\r
case ShellMenuSettings:\r
- svnCmd += _T("settings");\r
+ svnCmd += _T("settings /path:\"");\r
+ if (files_.size() > 0)\r
+ svnCmd += files_.front();\r
+ else\r
+ svnCmd += folder_;\r
+ svnCmd += _T("\"");\r
break;\r
case ShellMenuHelp:\r
svnCmd += _T("help");\r
svnCmd += folder_;\r
svnCmd += _T("\"");\r
break;\r
+ case ShellMenuGitSVNRebase:\r
+ svnCmd += _T("svnrebase /path:\"");\r
+ if (files_.size() > 0)\r
+ svnCmd += files_.front();\r
+ else\r
+ svnCmd += folder_;\r
+ svnCmd += _T("\"");\r
+ break;\r
+ case ShellMenuGitSVNDCommit:\r
+ svnCmd += _T("svndcommit /path:\"");\r
+ if (files_.size() > 0)\r
+ svnCmd += files_.front();\r
+ else\r
+ svnCmd += folder_;\r
+ svnCmd += _T("\"");\r
+ break;\r
case ShellMenuRebase:\r
svnCmd += _T("rebase /path:\"");\r
if (files_.size() > 0)\r
svnCmd += _T("\"");\r
}\r
break;\r
+ case ShellMenuRefBrowse:\r
+ svnCmd += _T("refbrowse /path:\"");\r
+ if (files_.size() > 0)\r
+ svnCmd += files_.front();\r
+ else\r
+ svnCmd += folder_;\r
+ svnCmd += _T("\"");\r
+ break;\r
case ShellMenuRefLog:\r
svnCmd += _T("reflog /path:\"");\r
if (files_.size() > 0)\r
break;\r
\r
case ShellMenuImportPatch:\r
- svnCmd += _T("importpatch /path:\"");\r
- if (files_.size() > 0)\r
- svnCmd += files_.front();\r
- else\r
- svnCmd += folder_;\r
+ tempfile = WriteFileListToTempFile();\r
+ svnCmd += _T("importpatch /pathfile:\"");\r
+ svnCmd += tempfile;\r
svnCmd += _T("\"");\r
+ svnCmd += _T(" /deletepathfile");\r
break;\r
\r
case ShellMenuCherryPick:\r