\r
static bool Export(CString *BashHash=NULL);\r
static bool CreateBranchTag(bool IsTag=TRUE,CString *CommitHash=NULL);\r
- static bool Switch(CString *CommitHash);\r
+ static bool Switch(CString *CommitHash, CString initialRefName = CString());\r
\r
- static bool IgnoreFile(CTGitPath &file, bool IsMask);\r
+// static bool IgnoreFile(CTGitPath &file, bool IsMask);\r
+ static bool IgnoreFile(CTGitPathList &filelist,bool IsMask);\r
static bool GitReset(CString *CommitHash,int type=1);\r
static bool ConflictEdit(CTGitPath &file,bool bAlternativeTool=false);\r
/**\r
* FUNCTION : FormatDateAndTime\r
* DESCRIPTION : Generates a displayable string from a CTime object in\r
- * system short or long format dependant on setting of option\r
- * as DATE_SHORTDATE or DATE_LONGDATE. bIncludeTime (optional) includes time.\r
+ * system short or long format or as a relative value\r
+ * cTime - the time\r
+ * option - DATE_SHORTDATE or DATE_LONGDATE\r
+ * bIncluedeTime - whether to show time as well as date\r
+ * bRelative - if true then relative time is shown if reasonable \r
+ * If HKCU\Software\TortoiseGit\UseSystemLocaleForDates is 0 then use fixed format\r
+ * rather than locale\r
* RETURN : CString containing date/time\r
*/\r
- static CString FormatDateAndTime( const CTime& cTime, DWORD option, bool bIncludeTime=true );\r
+ static CString FormatDateAndTime( const CTime& cTime, DWORD option, bool bIncludeTime=true,\r
+ bool bRelative=false );\r
+ /**\r
+ * Converts a given time to a relative display string (relative to current time)\r
+ * Given time must be in local timezone\r
+ */\r
+ static CString ToRelativeTimeString(CTime time);\r
+\r
+ static CString GetMergeTempFile(CString str,CTGitPath &merge);\r
+ static int StashApply(CString ref);\r
+\r
+ static bool IsSSHPutty();\r
+\r
+ static bool LaunchRemoteSetting();\r
+\r
+ static bool LaunchPAgent(CString *keyfile=NULL,CString * pRemote=NULL);\r
+\r
+ static CString GetClipboardLink();\r
+ static CString ChooseRepository(CString *path);\r
+\r
+ static bool SendPatchMail(CTGitPathList &pathlist,bool autoclose=false);\r
+\r
+ static int SaveCommitUnicodeFile(CString &filename, CString &mesage);\r
+\r
+ static int GetLogOutputEncode(CGit *pGit=&g_Git);\r
+\r
+ static bool Push();\r
+\r
+ static bool CreateMultipleDirectory(CString &dir);\r
+\r
+ static void RemoveTrailSlash(CString &path);\r
\r
- \r
private:\r
static CString PickDiffTool(const CTGitPath& file1, const CTGitPath& file2);\r
static bool GetMimeType(const CTGitPath& file, CString& mimetype);\r
+ /**\r
+ * Generates a display string showing the relative time between the two given times as COleDateTimes\r
+ */\r
+ static CString ToRelativeTimeString(COleDateTime time,COleDateTime RelativeTo);\r
+ static CString ExpandRelativeTime( int count, UINT format_1, UINT format_n );\r
+\r
+ static void DescribeFile(bool mode, bool base,CString &descript);\r
};\r