我是一名應用數學家,最近我加入了一個項目,該項目涉及我們科學應用程序的開發代碼。代碼庫不小,它作爲Web應用程序的一部分進行部署。關於我的存儲庫結構的建議
當我加入時,代碼在沒有版本控制系統的情況下被奇蹟般地維護。在服務器中有一箇中央文件夾,研究人員在需要使用代碼時會從中複製文件夾。在這個根目錄下面有一組具有不同版本代碼的目錄,所以人們將開始研究他們找到的最新版本,並用他們的修改創建一個新版本。
我創建了一個Mercurial倉庫,添加了所有的代碼版本,並說服所有人使用它。但是,自從轉向Mercurial以來,我們幾乎感覺不到需要升級版本號,即使使用hg copy
也不會讓我們保留修訂歷史記錄。
這裏是我需要你維護這個代碼庫的最佳實踐的建議。在RCS下使用不同版本的文件夾保存在回購中是否有意義?如果我們將代碼的單個副本保存在回購中,跟蹤版本的最常見方式是什麼?自述文件?我們是否應該將代碼的快照保存在指定版本的repo之外?保持原樣是否有意義?你使用什麼策略?
我們的團隊是一羣科學家,沒有人有關於如何維持這樣的回購的經驗,所以我對什麼是通常做的感興趣。