目錄
SVN
1. 開發中所遇到的問題
- 架構師搭建好的 Java 項目如何分享給大家?
- 每一名程序員寫好的代碼(或模塊)如何上傳?
- 多人編寫同一塊代碼產生的衝突該如何解決?
- 程序員刪庫跑路了,該如何實現代碼回溯?
代碼版本控制工具有 SVN、Git 等,雖然 Git 的市場份額越來越高,但是現在還有很多中小公司在用 SVN。本文主要介紹的是在 IDEA 上如何使用 SVN。
2. SVN 工作流程
- SVN 全稱:SubVersion。
- 認證:傳遞給服務器 SVN 服務器地址、用戶名、密碼。
- 上傳項目(share project,分享):將創建好的項目分享給服務器,只需要分享一次。
- 下載項目(check out,檢出):將服務器倉庫代碼下載到本地,只需要檢出一次。
- 上傳代碼(commit,提交):將本地代碼提交到 SVN 服務器。
- 更新代碼(update):將服務器最新代碼下載到本體。
- 內置數據庫:用了一種嵌入式小型數據庫 SQLlite,記錄了版本號(每次更新都會遞增版本號的值)、操作人、操作時間、操作方式、受影響代碼等信息。
3. SVN 服務器安裝和使用
a. 安裝介紹
- 可以修改修改端口爲 8443:
b. 使用介紹
- 打開 VisualSVN Server Manager,創建倉庫 >> 創建用戶 >> 創建組 >> 給指定倉庫授權。
4. SVN 客戶端安裝和使用
a. 安裝介紹
- 安裝完畢,必須重啓電腦。
b. 清除已保存數據
c. 測試連接 SVN 服務器
d. 使用介紹
① 檢出項目(checkout)
② 編寫本地代碼,上傳到 SVN 服務器
- 將編寫的代碼先添加 SVN 管理,再提交到 SVN 服務器。
③ 將 SVN 最新代碼更新到本地
- 右鍵 update 更新即可。
④ 代碼衝突
- 多人協作開發時,操作同一行代碼,就可能會產生衝突,這時候可以把另一個人叫過來一起解決,不要擅自做主。
- 開發時如何儘量避免衝突?
上班之前更新,在寫代碼,提交代碼之前再更新一次。
⑤ 刪除代碼
- 先刪除,再提交,SVN 服務器文件也就沒了。
- 注意:一定是這種方式刪除:
⑥ 代碼回溯(找回)
- 先選擇日誌,還原到指定版本,回溯提交。
5. IDEA 集成 SVN 客戶端插件
a. IDEA 中配置 SVN 插件
b. SVN 標準倉庫
c. IDEA 中使用 SVN
① 創建項目
- 創建 Maven 工程,交給 SVN 管理,分享到 SVN 服務器。
② 檢出項目
- 通過 IDEA 檢出 Maven 工程。
③ 編寫代碼,提交到 SVN 服務器
④ 更新 SVN 服務器下載本地
⑤ 解決代碼衝突
⑥ 忽略(ignore)
- 只上傳 Maven 的源代碼,忽略本地生成的 .idea 和 .iml。
6. SVN 分支操作
a. 檢出
- 在主幹中檢出分支代碼(時間 + 功能)
- ALT + 9 調出 version control 會話框:
b. 編輯代碼並提交
- 使用 IDEA 切換到分支,編輯代碼,提交。
c. 合併
- 使用 IDEA 操作主幹將分支的代碼進行合併。
7. 綜合案例
a. 上傳項目到 SVN
b. 檢出項目
① 從 SVN 中檢出項目
② 配置 Tomcat
③ Debug 運行
c. FAQ
① Failed to Share Project
- 問題:
- 解決方案:
② 上傳後服務器端不存在
- IDEA 開發工具對 SVN 支持並不友好,如果項目文件太多,上傳可能會卡死,導致未上傳項目文件。所以第一次上傳推薦在項目目錄下使用 Tortoise 提交,當然也可以使用 IDEA 上傳小文件。