OSDN Git Service

1595a8361bf5bb7d3e03b13736709f7063f64923
[tortoisegit/TortoiseGitJp.git] / src / Git / Git.h
1 #pragma once\r
2 #include "GitRev.h"\r
3 #include "GitStatus.h"\r
4 #include "GitAdminDir.h"\r
5 enum\r
6 {\r
7         GIT_SUCCESS=0,\r
8         GIT_ERROR_OPEN_PIP,\r
9         GIT_ERROR_CREATE_PROCESS,\r
10         GIT_ERROR_GET_EXIT_CODE\r
11 };\r
12 class CGit\r
13 {\r
14 private:\r
15         GitAdminDir m_GitDir;\r
16 public:\r
17         static CString m_MsysGitPath;\r
18         CGit(void);\r
19         ~CGit(void);\r
20         int Run(CString cmd, CString* output);\r
21         int RunAsync(CString cmd,PROCESS_INFORMATION *pi, HANDLE* hRead);\r
22         int RunLogFile(CString cmd, CString &filename);\r
23         CString GetUserName(void);\r
24         CString GetUserEmail(void);\r
25         CString GetCurrentBranch(void);\r
26 \r
27         bool SetCurrentDir(CString path)\r
28         {\r
29                 return m_GitDir.HasAdminDir(path,&m_CurrentDir);\r
30         }\r
31         CString m_CurrentDir;\r
32 \r
33 \r
34         int GetRemoteList(CStringList &list);\r
35         int GetBranchList(CStringList &list, int *Current);\r
36         \r
37         int GetLog(CString& logOut);\r
38         git_revnum_t GetHash(CString &friendname);\r
39         \r
40 };\r
41 extern void GetTempPath(CString &path);\r
42 extern CString GetTempFile();\r
43 \r
44 \r
45 extern CGit g_Git;