首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

外網兩台電腦用 SVN 同步代碼:公網 IP + 域名 + HTTPS + 認證,或直接用 Git + GitHub/GitLab 更省心

     編輯:程式設計綜合問答

SVN 完全支援外網訪問,但需解決公網穿透、加密傳輸、權限控制三大問題。現代團隊建議直接遷移 Git。

方案一:SVN + 公網部署(傳統)

  1. 服務端(一台有公網 IP 的機器)安裝 VisualSVN Server / Apache + mod_dav_svn。
  2. 配置 HTTPS(Let's Encrypt 免費證書),強制加密。
  3. 建立倉庫、用戶組、權限(`authz` 檔案)。
  4. 客戶端 TortoiseSVN / 命令列 `svn checkout https://svn.example.com/repo`。
  5. 若無公網 IP:用 **frp / ngrok / ZeroTier** 內網穿透映射 443/8443 端口。

方案二:Git + 托管平台(推薦,零運維)

  • 註冊 GitHub / GitLab / Gitee / Coding 私有倉庫。
  • 本地 `git clone git@github.com:user/repo.git`,SSH 金鑰免密。
  • 分支策略:`main`/`develop`/`feature/*`,PR/MR 代碼審查。
  • CI/CD 一體化(GitHub Actions / GitLab CI),推送即構建部署。

遷移腳本(SVN → Git)

# 安裝 git-svn
git svn clone --stdlayout --authors-file=authors.txt https://svn.example.com/repo
cd repo
git remote add origin git@github.com:user/repo.git
git push -u origin --all
git push origin --tags

結論:SVN 外網可行但維護成本高(SSL、備份、權限、穿透),Git + 雲端托管是 2024+ 的標準答案。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved