OSDN Git Service

Show "fast forward file" at merged commit
authorFrank Li <lznuaa@gmail.com>
Thu, 14 May 2009 15:16:50 +0000 (23:16 +0800)
committerFrank Li <lznuaa@gmail.com>
Thu, 14 May 2009 15:20:53 +0000 (23:20 +0800)
Signed-off-by: Frank Li <lznuaa@gmail.com>
src/Git/GitStatusListCtrl.h
src/Git/TGitPath.cpp
src/Git/TGitPath.h
src/TortoiseProc/gitlogcache.h

index c51476d..e119499 100644 (file)
@@ -78,7 +78,7 @@
 #define SVNSLC_SHOWDIRECTS             (SVNSLC_SHOWDIRECTFILES | SVNSLC_SHOWDIRECTFOLDER)\r
 \r
 \r
 #define SVNSLC_SHOWDIRECTS             (SVNSLC_SHOWDIRECTFILES | SVNSLC_SHOWDIRECTFOLDER)\r
 \r
 \r
-#define SVNSLC_SHOWVERSIONED (SVNSLC_SHOWNORMAL|SVNSLC_SHOWMODIFIED|\\r
+#define SVNSLC_SHOWVERSIONED (CTGitPath::LOGACTIONS_FORWORD|SVNSLC_SHOWNORMAL|SVNSLC_SHOWMODIFIED|\\r
 SVNSLC_SHOWADDED|SVNSLC_SHOWREMOVED|SVNSLC_SHOWCONFLICTED|SVNSLC_SHOWMISSING|\\r
 SVNSLC_SHOWREPLACED|SVNSLC_SHOWMERGED|SVNSLC_SHOWIGNORED|SVNSLC_SHOWOBSTRUCTED|\\r
 SVNSLC_SHOWEXTERNAL|SVNSLC_SHOWINCOMPLETE|SVNSLC_SHOWINEXTERNALS|\\r
 SVNSLC_SHOWADDED|SVNSLC_SHOWREMOVED|SVNSLC_SHOWCONFLICTED|SVNSLC_SHOWMISSING|\\r
 SVNSLC_SHOWREPLACED|SVNSLC_SHOWMERGED|SVNSLC_SHOWIGNORED|SVNSLC_SHOWOBSTRUCTED|\\r
 SVNSLC_SHOWEXTERNAL|SVNSLC_SHOWINCOMPLETE|SVNSLC_SHOWINEXTERNALS|\\r
index c9dc54c..9bdbed4 100644 (file)
@@ -1039,7 +1039,12 @@ int CTGitPathList::ParserFromLog(BYTE_VECTOR &log)
                        if(GitPath)\r
                        {\r
                                GitPath->ParserAction( log[actionstart] );      \r
                        if(GitPath)\r
                        {\r
                                GitPath->ParserAction( log[actionstart] );      \r
-                               GitPath->m_Action |=merged?CTGitPath::LOGACTIONS_MERGED:0;\r
+                               \r
+                               if(merged)\r
+                               {\r
+                                       GitPath->m_Action |= CTGitPath::LOGACTIONS_MERGED;\r
+                                       GitPath->m_Action &= ~CTGitPath::LOGACTIONS_FORWORD;\r
+                               }\r
                                m_Action |=GitPath->m_Action;\r
 \r
                        }else\r
                                m_Action |=GitPath->m_Action;\r
 \r
                        }else\r
@@ -1110,6 +1115,7 @@ int CTGitPathList::ParserFromLog(BYTE_VECTOR &log)
                                //path.SetFromGit(pathname);\r
                                path.m_StatAdd=StatAdd;\r
                                path.m_StatDel=StatDel;\r
                                //path.SetFromGit(pathname);\r
                                path.m_StatAdd=StatAdd;\r
                                path.m_StatDel=StatDel;\r
+                               path.m_Action |= CTGitPath::LOGACTIONS_FORWORD;\r
                                AddPath(path);\r
                        }\r
 \r
                                AddPath(path);\r
                        }\r
 \r
@@ -1919,6 +1925,10 @@ CString CTGitPath::GetActionName(int action)
                return _T("Rename");\r
        if(action  & CTGitPath::LOGACTIONS_COPY)\r
                return _T("Copy");\r
                return _T("Rename");\r
        if(action  & CTGitPath::LOGACTIONS_COPY)\r
                return _T("Copy");\r
+\r
+       if(action  & CTGitPath::LOGACTIONS_FORWORD )\r
+               return _T("Forward");\r
+\r
        if(action & CTGitPath::LOGACTIONS_REBASE_EDIT)\r
                return _T("Edit");\r
        if(action & CTGitPath::LOGACTIONS_REBASE_SQUASH)\r
        if(action & CTGitPath::LOGACTIONS_REBASE_EDIT)\r
                return _T("Edit");\r
        if(action & CTGitPath::LOGACTIONS_REBASE_SQUASH)\r
index 77f6f35..875ffdb 100644 (file)
@@ -19,6 +19,7 @@ public:
                LOGACTIONS_CACHE        = 0x00000020,\r
                LOGACTIONS_COPY         = 0x00000040,\r
                LOGACTIONS_MERGED   = 0x00000080,\r
                LOGACTIONS_CACHE        = 0x00000020,\r
                LOGACTIONS_COPY         = 0x00000040,\r
                LOGACTIONS_MERGED   = 0x00000080,\r
+               LOGACTIONS_FORWORD  = 0x00000100,\r
                LOGACTIONS_UNVER        = 0x80000000,\r
                LOGACTIONS_IGNORE       = 0x40000000,\r
                //LOGACTIONS_CONFLICT = 0x20000000,\r
                LOGACTIONS_UNVER        = 0x80000000,\r
                LOGACTIONS_IGNORE       = 0x40000000,\r
                //LOGACTIONS_CONFLICT = 0x20000000,\r
index 9d8840e..a3f8289 100644 (file)
@@ -8,7 +8,7 @@
 #define LOG_DATA_MAGIC         0x99aa00FF\r
 #define LOG_DATA_ITEM_MAGIC 0x0F8899CC\r
 #define LOG_DATA_FILE_MAGIC 0x19999FFF\r
 #define LOG_DATA_MAGIC         0x99aa00FF\r
 #define LOG_DATA_ITEM_MAGIC 0x0F8899CC\r
 #define LOG_DATA_FILE_MAGIC 0x19999FFF\r
-#define LOG_INDEX_VERSION   0x4 \r
+#define LOG_INDEX_VERSION   0x5 \r
 \r
 struct SLogCacheIndexHeader \r
 {\r
 \r
 struct SLogCacheIndexHeader \r
 {\r