我很想知道人们有什么策略来保持他们的代码和工作在多台机器上的版本化。例如,我有一台运行 XP 的台式机、一台运行 OSX 的 macbook 和运行 XP 的 VMWare 以及一台用于运行产品演示的销售笔记本电脑。我想知道如何始终使这些保持同步。Subversion 是一种可能性,但我发现它对于处理二进制文件不太有用——也许我在这里忽略了一些东西。其他人使用什么,因为他们必须有类似的问题?他们是否将所有文件保存在 USB 驱动器上,而不是保存在本地文件系统上。我并不总是在线,所以远程存储并不是一个真正的选择。
10 回答
正如其他人所说,颠覆是你最好的代码选择。对于二进制文件/非代码,我发现DropBox非常方便。它存储修订、取消删除、轻松共享等,基本上是一个自动的、网络友好的 SVN。不必考虑它对我来说是最大的优点。
我使用mercurial来保持我的工作文件同步。这对于大型二进制文件也不是很好,但它让我可以在不在线的情况下提交,并且可以轻松地分支/合并不同的版本。
啊,旧的 VCS 辩论。
共享/同步源代码的最简单方法是使用某种 VCS(版本控制系统)——这比能够保持同步为您提供了很多好处。那里有很多 VCS,我个人使用 Bazaar-NG 和 Subversion——尽管我建议您试用一些,看看您使用它们的感觉如何。
对于同步一般文件,特别是如果它只是为了你自己,我建议使用“DropBox”(http://www.getdropbox.com/) - 我在过去一周左右一直在使用它,它使同步用一组文件来安装我的多台机器要容易得多。
它还有一些额外的功能,可能对协作也很有用,但我还没有尝试过。
Subversion 在我们的办公室里非常适合销售、项目管理、设计和代码文件。
我将我的点文件(.zshrc
等)存储在一个 Git 存储库中,该存储库已检出到我的 homedir 中。我也对包含我的课业的 LaTeX 文件做同样的事情。
我把重要的构建放在源代码控制中——它适用于二进制文件。
对于包括源代码在内的大多数文件,我们确实使用 Subversion。这真的很棒。
如果有较大的文件或项目管理相关文档被无权访问源代码控制系统的人使用,我们使用 Microsoft SharePoint。如果您与公司以外的人一起工作,这尤其有用。
我将所有工作都加密保存在 U 盘上。它还有一个可引导的 Linux 分区,因此我可以从任何机器进入一个合理的工作开发环境,例如一台借来的工作笔记本电脑,带有一些我无法移动到我自己的机器上的会议携带的软件。
当你有更多的人在处理相同的代码时,我会将它放在一个中央 Subversion 存储库中并设置脚本(在 Windows 中,你可以使用 U 盘的自动运行功能)以始终在 repo 和 U 盘之间同步内容随身携带。
FolderShare ( http://foldershare.com ) 也很适合同步文件。例如,我用它来保持笔记本电脑和台式机之间的文件等同步。
当然,尤其是对于代码,这并不能排除对源代码控制的需要。