if(VerifyNoConflict())\r
return;\r
GitRev *curRev=(GitRev*)m_CommitList.m_arShownList[m_CurrentRebaseIndex];\r
+ if(this->CheckNextCommitIsSquash())\r
+ {//next commit is not squash;\r
+ m_RebaseStage = REBASE_SQUASH_EDIT;\r
+ this->OnRebaseUpdateUI(0,0);\r
+ this->UpdateCurrentStatus();\r
+ return ;\r
+\r
+ }\r
m_RebaseStage=REBASE_CONTINUE;\r
curRev->m_Action|=CTGitPath::LOGACTIONS_REBASE_DONE;\r
this->UpdateCurrentStatus();\r
this->m_wndOutputRebase.SendMessage(SCI_SETREADONLY, TRUE);\r
}\r
\r
+int CRebaseDlg::GetCurrentCommitID()\r
+{\r
+ if(m_CommitList.m_IsOldFirst)\r
+ {\r
+ return this->m_CurrentRebaseIndex+1;\r
+\r
+ }else\r
+ {\r
+ return m_CommitList.GetItemCount()-m_CurrentRebaseIndex;\r
+ }\r
+}\r
+\r
int CRebaseDlg::DoRebase()\r
{ \r
CString cmd,out;\r
if(mode == CTGitPath::LOGACTIONS_REBASE_SQUASH)\r
nocommit=_T(" --no-commit ");\r
\r
- AddLogString(CTGitPath::GetActionName(mode)+_T(":")+pRev->m_CommitHash);\r
+ CString log;\r
+ log.Format(_T("%s %d:%s"),CTGitPath::GetActionName(mode),this->GetCurrentCommitID(),pRev->m_CommitHash);\r
+ AddLogString(log);\r
AddLogString(pRev->m_Subject);\r
cmd.Format(_T("git.exe cherry-pick %s %s"),nocommit,pRev->m_CommitHash);\r
\r
return ;\r
}\r
this->OnCancel();\r
-}
\ No newline at end of file
+}\r