日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

PHP中调用SVN命令更新网站方法(解决文件名包含中文更新失败的问题)

發(fā)布時間:2025/7/14 php 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PHP中调用SVN命令更新网站方法(解决文件名包含中文更新失败的问题) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

想說寫一個通過網(wǎng)頁就可以執(zhí)行 SVN 升級的程序,結(jié)果并不是我想得那樣簡單,有一些眉角需要注意的說。
先以 Apache 的用戶帳號執(zhí)行 SVN checkout,這樣 Apache 才有 SVN 的鏈結(jié)權(quán)力,才可以通過網(wǎng)頁執(zhí)行 SVN update

su -s /bin/bash www-data cd /var/www svn checkout http://www.xxx.com/svn/my_site

?

在用 PHP 執(zhí)行 shell 指令前要加上 export LANG=C.UTF-8 的環(huán)境聲明,不然 SVN update 時遇到中文會出現(xiàn) error,Ubuntu 的 Apache 默認(rèn)是 LANG=C
接著要為 SVN 補上 --accept theirs-full 的參數(shù),這是當(dāng)沖突發(fā)生時,都以 SVN Server 的文件版本為主
最后再加上 2>&1,讓 PHP 可以取得包含錯誤的所有信息

?

<?php putenv('LANG=C.UTF-8'); // 根據(jù)Linux設(shè)置語言環(huán)境變量,解決svn更新時中文名稱導(dǎo)致的問題,也可以使用putenv('LANG=en_US.UTF-8'); $result = shell_exec('svn update --accept theirs-full /var/www/my_site 2>&1'); echo nl2br($result);

?

轉(zhuǎn)載于:https://www.cnblogs.com/itsharehome/p/8503137.html

總結(jié)

以上是生活随笔為你收集整理的PHP中调用SVN命令更新网站方法(解决文件名包含中文更新失败的问题)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。