我有這段代碼應該在我的網頁上顯示當前的修訂版本。我通過php index.php
在我的linux服務器上運行它。代碼工作正常。它的HTML代碼,並顯示修訂。但是,當我試圖通過我的網頁瀏覽器(google-chrome 40)訪問我的網頁時。它不顯示修訂。通過php顯示修訂版
<?php
$revision = substr(shell_exec('git rev-parse origin/master'),0,7);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title>Test - shell_exec</title>
</head>
<body>
<footer class="footer">
<p>Revision <?php echo $revision; ?></p>
</footer>
</body>
</html>
http://stackoverflow.com/questions/8562544/executing-git-commands-via-php? – rjv 2015-02-06 07:56:13
你應該將一個Git Hook store的修訂版本添加到一個可以傳輸到遠程服務器的文件中。大多數服務器阻止像'shell_exec'這樣的函數的執行。 – KFO 2015-02-06 08:03:28
@KFO我使用的服務器已經是我的git-server。我的index.php文件夾已經被'git:root'擁有,所以每當我推它時,都會通過'git fetch && git reset --hard origin/master'進行更新。 – KeiKun 2015-02-06 08:06:17