2011-06-29 57 views
1

最後我進入了修訂控制的世界!我沒有任何有關Subversion的知識,但已經閱讀了大部分的書籍,並且我正在安裝Subversion和Trac。我們將是兩位開發PHP Web應用程序的開發人員。源代碼直接在中繼文件夾或中繼/子文件夾中

我的問題涉及目錄結構。常見的做法似乎是將源代碼直接放入主幹中。但我怎麼處理文件,是不是該應用程序的直接參與,例如:

  • Liquibase更新日誌,如果我們選擇有版本控制MySQL的歷史
  • PHP小工具,這將不會是PHP應用程序的直接構成部分,但是是不錯的版本控制
  • ,我們要保持版本控制

我可以在行李箱添加子文件夾的應用程序本身

  • 其他原始文件/源文件 - 「應用程序「 - 以及其他永遠不會部署的文件的其他子文件夾d /在生產中?或者還有其他更好的解決方法嗎?

  • 回答

    2

    對於你所描述的東西,通常每個app/project/tool/component/thingie都有自己的目錄,並在其下有自己的trunk/tags/branches。

    /main-app/trunk 
    /main-app/tags 
    /main-app/branches 
    /small-tool-1/trunk 
    /small-tool-1/tags 
    /small-tool-1/branches 
    /small-tool-2/trunk 
    /small-tool-2/tags 
    /small-tool-2/branches 
    

    您可以在在線圖書Version Control with Subversion中閱讀更多內容。

    +0

    感謝您的回答!我們有兩個主要項目,可能會共享一些通用代碼。我們也可能會製作一些小工具,並將文檔放在SVN中。這可能是一個體面的設置(每個下面有trunk/tags/branches):'/ project1','/ project2','/ shared-code','/ documentation/project1','/ documentation/project2',/misc/tools','/ misc/migration-scripts','/ misc/database-changelogs/project1','/ misc/database-changelogs/project2'。或者,我應該跳過分類文件夾「misc」,以便不經常使用的東西,而是始終將文件夾直接放在根目錄下? – elaxsj

    +0

    這是一個非常體面的設置。無論你有沒有「misc」目錄,完全是個人喜好的問題。 – leedm777

    0

    要添加到戴夫的答案,我會按照他的建議,保持工具等,在他們自己的目錄。

    另外,您可以考慮將svn.externals屬性添加到主應用程序的trunk目錄中。使用svn.externals可以使svn將其他存儲庫目錄(工具等)檢入到主應用程序的工作目錄的子文件夾中。

    例如,這可以用於允許共享代碼與多個應用程序簽出。

    相關問題