在繁忙的工作日程中,我偶尔会抽出一些时间来研究/编码/处理我最喜欢的 ASP.net 项目(其中大部分都在探索新概念/设计)。我也会在周末/晚上/空闲时间在家做这些事情。我发现的一个主要困难是我开始维护 2 个代码库(一个在办公室,一个在家里)。我在工作时使用代理,在家里使用无线路由器(我相信 ISP 为我提供了一个动态 IP)。在这两个地方,我都使用 WinXP。有没有办法可以配置任何源代码控制(希望是开源的,也可能是 subversion,因为我知道如何使用它)。我可以使用 TeamViewer 从工作地点访问我家里的机器,因此可以找到我的 IP/更改设置等。有没有办法在我家里的电脑上配置 subversion,以便我可以从工作地点访问它?
答案1
也许您无法访问您的主 Subversion 实例,因为您已将其设置为使用svn://您的工作路由器阻止了哪个协议?
相反,你可以设置你的主 Subversion 服务器来使用https://协议。您的工作路由器更有可能允许https://流量(端口 443)比svn://流量(端口 3690)。端口 80 上的 HTTP 也可以工作,但我更喜欢使用 SSL 来保护我的源代码。
这里有一篇文章讨论在 Windows 上使用 Apache 设置 Subversion 服务器(针对 http 协议:如何在 Windows 上设置 Subversion + Apache + WebSVN。这是另一篇文章:如何:适用于 Windows 的 Subversion 与 Apache 服务器 - 初学者指南
要解决动态 IP 问题,请使用以下服务DynDNS网站。
答案2
呼,我发现 google(和 MS codeplex)可以在 SVN 中托管您的代码。我在 google code 中创建了一个新项目,它解决了我的目的。AnkhSVN 和 TortoiseSVN 满足了我的目的。唯一的问题是我必须同意某种开源许可证,而这个 repo 是供我个人使用的,所以不太担心许可证
答案3
我使用 SVN 的 google code,后来改用 HG。从来没有遇到过任何问题,直到我的雇主开始通过代理阻止 https。
答案4
最简单的方法可能是通过路由器的端口转发将 Subversion 服务器转发到公共互联网。这通常可以在路由器的控制界面中进行配置。此外,您还需要路由器的外部 IP;最简单的方法是使用 DynDNS 之类的东西。
只需确保服务器始终得到良好的修补。:-)
另一种可能性是使用某处托管的 SVN 服务器。有免费和付费两种选择。