Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php svn签出无法通过phing工作_Php_Svn_Phing - Fatal编程技术网

Php svn签出无法通过phing工作

Php svn签出无法通过phing工作,php,svn,phing,Php,Svn,Phing,我目前正在尝试编写一个内部应用程序,以便只需单击一下即可将我们的项目部署到验收和生产服务器。 我们正在使用phing来实现这一点 目前,我很难签出(或执行svn导出)该项目。我使用以下命令: <exec command="svn checkout ${svn.host} ${svn.exportdir} --force --username server --password <password>" /> su wwwrun wget https://... su

我目前正在尝试编写一个内部应用程序,以便只需单击一下即可将我们的项目部署到验收和生产服务器。 我们正在使用phing来实现这一点

目前,我很难签出(或执行svn导出)该项目。我使用以下命令:

<exec command="svn checkout ${svn.host} ${svn.exportdir} --force --username server --password <password>"  />
su wwwrun wget https://... 
su wwwrun svn checkout https://...

在普通的命令行上,这非常有效,但是由于主机使用https,因此会提示我接受证书。问题是似乎并没有参数可以自动接受证书

--trust server cert也没有帮助,因为该证书由于主机名不匹配而被拒绝,其中参数仅绕过“CA未知”错误


关于如何签出(或导出、更新…)项目,有什么想法吗?

只需作为运行phing的用户手动签出一次即可。如果愿意,您可以签出到
/dev/null
。一旦您接受了证书,它将保持被接受状态(如果该用户有一个
.subversion
目录来存储它)


顺便问一下,您为什么通过和
ExecTask
使用
svn
命令行界面而不是直接使用?

在svn服务器HTTPS地址上执行
wget
并永久接受证书

$ wget https://svn.mydomain.com/repos
然后按p键接受证书


我还添加了一些提示:

就叫

svn checkout https://svn.mydomain.com/repos --force --username server --password iMPs+nana0kIF
并接受证书


当执行Phing命令的用户不是root用户时,可能仍然存在问题,那么您必须以运行Phing命令的用户身份执行此命令:

<exec command="svn checkout ${svn.host} ${svn.exportdir} --force --username server --password <password>"  />
su wwwrun wget https://... 
su wwwrun svn checkout https://...

确保您还传递了
--非交互式
,以停止命令等待用户输入。