版本管理的一些觀念說明
前幾天跟公司內部同事分享了一些版本管理的觀念
順便作個紀錄,避免以後還要找資料
名詞解釋
- Trunk (Baseline) – 主線
- Branches – 分支
- Tags – 標籤
版本控管觀念
- 版本管理包含文件以及程式
- 包含工具的使用以及人為規範的遵循
- 專案中最好有版本控制員角色
- 版本管理是個循序漸進、持久的過程
- 項目結構 (目錄) 儘可能保持有邏輯以及意義 (根據專有名詞或階段區分、如 master, release 等)
- 避免多人修改同一檔案 (文件)
- 本地端與伺服器端版本不一致
- 避免手動修改檔案唯讀權限
- 獲取最新版本時請注意本地端檔案版本
- 頻繁的簽入或很少簽入
- 良好的規範與共識
- 開發前先取得最新版本
- 確保編譯成功後在簽入 (Commit) 程式
- 每次簽入的時候都撰寫 log,說明修改的項目與原由
- 當內容發生衝突時,由歷程紀錄得知上一個修改者,主動討論解決
- 每日下班前,必須將可建置版本交付出來,避免保留程式碼在簽出 (Checkout) 狀態
- 避免大量程式碼簽入