我正在尝试自动化 SVK 同步过程。
配置完SVK镜像后,我写了一个批处理文件,内容如下
svk sync -a >> svk.log &2>1
然后我添加了一个在我的管理帐户下运行的 Windows 计划任务。
在 svk.log 我读过
getpwuid 函数在 C:\Programmi\svk\bin\svk 第 142 行未实现。
有什么提示吗?
ps 我可以从命令行运行 svn sync -a(同一用户)
当我发布我的问题时,我不知道
有了以上内容,我通过更改修改了 /bin/svk 文件
$ENV{HOME} ||= (
$ENV{HOMEDRIVE} ? catdir(@ENV{qw( HOMEDRIVE HOMEPATH )}) : ''
) || (getpwuid($<))[7];
$ENV{USER} ||= (
(defined &Win32::LoginName) ? Win32::LoginName() : ''
) || $ENV{USERNAME} || (getpwuid($<))[0];
在
$ENV{HOME} ||= (
$ENV{HOMEDRIVE} ? catdir(@ENV{qw( HOMEDRIVE HOMEPATH )}) :
($ENV{USERPROFILE} ? $ENV{USERPROFILE} : '')
);
$ENV{USER} ||= (
(defined &Win32::LoginName) ? Win32::LoginName() : ''
) || $ENV{USERNAME};
现在我可以将我的批处理调用 svk 作为 Windows 计划任务运行