OSDN Git Service

Show changed files after pull.
authorJohan 't Hart <johanthart@gmail.com>
Thu, 4 Jun 2009 21:51:40 +0000 (23:51 +0200)
committerJohan 't Hart <johanthart@gmail.com>
Thu, 4 Jun 2009 21:53:29 +0000 (23:53 +0200)
src/Git/Git.cpp
src/Git/Git.h
src/TortoiseProc/Commands/PullCommand.cpp

index 7d3787c..0e845a6 100644 (file)
@@ -603,7 +603,7 @@ int CGit::RunLogFile(CString cmd,CString &filename)
 //     return 0;\r
 }\r
 \r
-git_revnum_t CGit::GetHash(CString &friendname)\r
+git_revnum_t CGit::GetHash(const CString &friendname)\r
 {\r
        CString cmd;\r
        CString out;\r
index e0dde8d..a339664 100644 (file)
@@ -97,7 +97,7 @@ public:
 \r
        BOOL EnumFiles(const TCHAR *pszProjectPath, const TCHAR *pszSubPath, unsigned int nFlags, WGENUMFILECB *pEnumCb, void *pUserData);\r
 \r
-       git_revnum_t GetHash(CString &friendname);\r
+       git_revnum_t GetHash(const CString &friendname);\r
 \r
        int BuildOutputFormat(CString &format,bool IsFull=TRUE);\r
        //int GetShortLog(CString &log,CTGitPath * path=NULL, int count =-1);\r
index 52b6996..6ef53f8 100644 (file)
@@ -25,6 +25,7 @@
 #include "MessageBox.h"\r
 #include "PullFetchDlg.h"\r
 #include "ProgressDlg.h"\r
+#include "FileDiffDlg.h"\r
 \r
 bool PullCommand::Execute()\r
 {\r
@@ -35,11 +36,19 @@ bool PullCommand::Execute()
                CString url;\r
                url=dlg.m_RemoteURL;\r
                CString cmd;\r
+               CString hashOld = g_Git.GetHash(L"HEAD");\r
                cmd.Format(_T("git.exe pull \"%s\" %s"),url,dlg.m_RemoteBranchName);\r
                CProgressDlg progress;\r
                progress.m_GitCmd=cmd;\r
                if(progress.DoModal()==IDOK)\r
+               {\r
+                       CString hashNew = g_Git.GetHash(L"HEAD");\r
+                       CFileDiffDlg dlg;\r
+                       dlg.SetDiff(NULL,hashOld,hashNew);\r
+                       dlg.DoModal();\r
+\r
                        return TRUE;\r
+               }\r
        }\r
 #if 0\r
        CCloneDlg dlg;\r