1 // TortoiseGit - a Windows shell extension for easy version control
3 // Copyright (C) 2008-2010 - TortoiseGit
5 // This program is free software; you can redistribute it and/or
6 // modify it under the terms of the GNU General Public License
7 // as published by the Free Software Foundation; either version 2
8 // of the License, or (at your option) any later version.
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software Foundation,
17 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 // GitIndexTest.cpp : Defines the entry point for the console application.
24 #include "gitstatus.h"
29 int _tmain(int argc
, _TCHAR
* argv
[])
35 GetCurrentDirectory(256,buff
);
36 path
.SetFromWin(buff
);
38 if(!path
.HasAdminDir(&root
))
40 printf("not in git repository\n");
45 list
.ReadIndex(root
+_T("\\.git\\index"));
47 CGitHeadFileList filelist
;
48 filelist
.ReadHeadHash(buff
);
49 _tprintf(_T("update %d\n"), filelist
.CheckHeadUpdate());
52 // filelist.ReadTree();
59 HANDLE handle
= FindFirstFile(str
,&data
);
60 while(FindNextFile(handle
,&data
))
62 if( _tcsnccmp(data
.cFileName
, _T(".."),2) ==0)
64 if( _tcsnccmp(data
.cFileName
, _T("."),1) ==0 )
69 spath
+= data
.cFileName
;
70 CTGitPath
path(spath
);
74 t1
= ::GetCurrentTime();
75 status
.GetStatusString(status
.GetAllStatus(path
), 100,name
);
76 t2
= ::GetCurrentTime();
78 _tprintf(_T("%s - %s - %d\n"),data
.cFileName
, name
, t2
-t1
);