svn目录结构 php,svn – php代码组织
您可以將代碼集中在一個公共文件夾(創建一個腳本,將所有代碼復制到8個服務器或使用
NFS)。
此集中式代碼可以在SVN中的一個或多個存儲庫中。所以當你推,你只推擠你需要推。
例如,您可以為自己的PHP庫(數據庫類,xml,imap等)創建1個存儲庫。在一個簡單的結構,當你調用這些文件,你只需:
require('/web/lib/DatabaseMySQL.class.php');
這樣,你知道所有你需要的文件在同一個地方,很容易維護。特別是如果你的代碼需要需要文件的所需文件。
您可以根據需要創建任意數量的存儲庫,如果不想將文件(例如第三方(Smarty,phpmailer)與您創建的代碼混合使用,請重復此操作。
另一件事是,不要重新發明輪子。有很多好的代碼,可能做你已經需要做的。像發送電子郵件(phpmailer或任何其他)或模板系統(Smarty或任何其他)。這樣你有相同的開發時間和更新(如果可用),你只需下載,復制(提交,如果你有一個存儲庫)和推。
腳本VS NFS。
創建一個腳本來推送所有的代碼在8個Web服務器是很容易做到的。這里的缺點是你需要確保所有的文件夾和所有的文件,你在每個服務器是相同的,以避免錯誤。此外,如果你的網絡有一個滯后或連接下降在推一些服務器將不會有相同的代碼。再次,更多的錯誤。這比NFS解決方案運行得快一點。
創建一個NFS修復上面的問題,因為你只使用1位置,但如果該位置刪除所有的服務器將無法正常運行。所以,當你推代碼,你只推到1個地方,所有其他服務器自動有新的代碼。你還需要知道的東西,這將是一個比如果代碼是直接在硬盤驅動器上慢一點。
以下是您可以使用的示例腳本:
您可以創建一個.sh腳本,它將代碼從您的存儲庫(例如,從存儲庫檢出的代碼)復制到所有服務器,如下所示:
// file: pushcode.sh
#!/bin/bash
/usr/bin/rsync -avz --exclude='.svn' -e ssh /path/to/code/checkedout/ user@server1:/path/to/code
/usr/bin/rsync -avz --exclude='.svn' -e ssh /path/to/code/checkedout/ user@server2:/path/to/code
使此腳本可執行并運行它:
./pushcode.sh
要確保代碼正確復制,而不提示每次輸入密碼,您將必須輸入bypass the ssh login。
總結
以上是生活随笔為你收集整理的svn目录结构 php,svn – php代码组织的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: php接收不到ajax请求参数,我是否需
- 下一篇: oracle全组件安装,Oracle t
