2012-10-17 93 views
1

我期待將我的團隊帶入本世紀,並使用源代碼管理。開發人員能夠處理源代碼控制軟件 - 無論是基於命令行還是基於GUI,Windows或者-Nix。CM用戶的源代碼管理

他們在本地和單獨處理他們的代碼(這讓我非常害怕)的原因是因爲我們的CM團隊在技術上並不熟悉整個簽入/簽出流程。

是否有一個針對CM組的源代碼管理軟件?我正在考慮一個能夠讓他們從已經簽入的所有文件中選擇一個文件的版本,並將其標記爲他們正在創建的版本。

+0

那是「CM組」嗎?您現在使用哪種構建 - 工作流程? –

+0

開發人員開發並將他們的文件保存在他們選擇的位置。當我們需要構建時,CM向開發人員詢問最新版本的位置,將該目錄(或個別文件(如果是這種情況))複製到具有構建名稱的新目錄中,然後根據這些文件構建。 – redhotspike

+0

我認爲在選擇SCM之前,您必須首先從開發**的良好工作流程開始。當前*「無管理的無政府狀態」*非常糟糕。之後幾乎所有的SCM(也許DVCS,因爲他們支持更多類型的靈活工作流程)將滿足您的需求 –

回答

2

如果您認爲CM(配置管理)組負責發佈管理流程,那麼您可以將它們與您可能選擇的任何(D)VCS工具的「技術細節」相隔離出版過程。

出版在於進行可見的地方(一個共享目錄中,工件庫像Nexus,致力於發佈,...)的:

  • 一個交付(一組二進制和它們的依賴)運行你的程序的必要條件
  • 這些二進制文件(SVN版本號或標籤,git標籤,Nexus Group-Artifact-Version等)的清晰版本,允許開發人員隨時查找確切的代碼集團隊回到他們的缺陷修復列表
  • 一個文件,解釋部署

的CM組採取一套交付,管理髮布流程和不同部署環境(集成,UAT,預督促,督促,...)之間的推廣,而不必須處理VCS工具。

這也加強了dev和prod之間的強烈分離(在環境進程中),這允許開發人員採用他們想要的任何開發工作流程,而不會影響CM組的工作方式。

+0

哇。 Nexus聽起來和我在找的一模一樣。假設你已經使用過Nexus,那麼你是如何輕鬆地完成設置(移動文件,設置用戶等)? – redhotspike

+0

@redhotspike相當簡單,一旦你理解了這個想法(Nexus書幫助:http://www.sonatype.com/books/nexus-book/reference/)。當你存儲過多的二進制文件時,很容易:Nexus引用是一個具有命名約定的目錄集合,因此刪除東西很簡單(與刪除VCS數據庫中的版本相反)。 – VonC