SccDirDiff 函数
此函数显示客户端磁盘上的当前本地目录与源代码管理下的相应项目之间的差异。
语法
SCCRTN SccDirDiff(
LPVOID pContext,
HWND hWnd,
LPCSTR lpDirName,
LONG dwFlags,
LPCMDOPTS pvOptions
);
参数
pContext
[in]源代码管理插件上下文结构。
hWnd
[in]源代码管理插件可以作为其提供的任何对话框的父级的 IDE 窗口的句柄。
lpDirName
[in]要为其显示视觉差异的本地目录的完全限定路径。
dwFlags
[in]命令标志(请参阅“备注”部分)。
pvOptions
[in]特定于源代码管理插件的选项。
返回值
此函数的源代码管理插件实现应返回以下值之一:
值 | 说明 |
---|---|
SCC_OK | 磁盘上的目录与源代码控制中的项目相同。 |
SCC_I_FILESDIFFER | 磁盘上的目录不同于源代码控制中的项目。 |
SCC_I_RELOADFILE | 需要重新加载文件或项目。 |
SCC_E_FILENOTCONTROLLED | 该目录不在源代码控制下。 |
SCC_E_NOTAUTHORIZED | 不允许用户执行此操作。 |
SCC_E_ACCESSFAILURE | 访问源代码管理系统时出现问题,可能是因为网络或争用问题。 建议重试。 |
SCC_E_NONSPECIFICERROR SCC_E_UNKNOWNERROR |
非特定故障。 |
SCC_E_FILENOTEXIST | 找不到本地目录。 |
注解
此函数用于指示源代码管理插件向用户显示对指定目录的更改列表。 插件以所选格式打开自己的窗口,以显示磁盘上的用户目录与版本控制下的相应项目之间的差异。
如果插件完全支持比较目录,则即使不支持“quick-diff”选项,它也必须支持基于文件名比较目录。
dwFlags |
解释 |
---|---|
SCC_DIFF_IGNORECA标准版 | 不区分大小写的比较(可用于快速差异或视觉对象)。 |
SCC_DIFF_IGNORESPACE | 忽略空格(可用于快速差异或视觉对象)。 |
SCC_DIFF_QD_CONTENTS | 如果源代码管理插件支持,则以无提示方式比较目录字节字节。 |
SCC_DIFF_QD_CHECKSUM | 如果插件支持,请以无提示方式通过检查和比较目录,或者(如果不支持)回退到SCC_DIFF_QD_CONTENTS。 |
SCC_DIFF_QD_TIME | 如果插件支持,请静默地比较目录的时间戳,或者(如果不支持)回退到SCC_DIFF_QD_CHECKSUM或SCC_DIFF_QD_CONTENTS。 |
注意
此函数使用与 SccDiff 相同的命令标志。 但是,源代码管理插件可以选择不支持目录的“快速差异”操作。