它可能是短期项目的最佳协作工具?

时间:2012-01-13 22:54:34

标签: svn version-control

我,我们发现自己与一些外部实体合作了很短的时间(定义:但可能是1周,1个月,1年)。我把它称为实体,因为它可以是一个人,但也是一个巨大的多元公司。

问题在于,到目前为止,所有通信始终都是为客户端完成的,这也意味着很多工作。如果我们能够提供协作工具会更容易:SVN,TortoiseSVN或其他。

解决方案应该是独立于操作系统的,并且是可交付的。 我个人有点坚持一些SVN工具,但我可能需要 一些沉重的个性化。

所以问题是:你用什么作为协作工具?哪一个最好(如果有的话)? 假设环境异构。

3 个答案:

答案 0 :(得分:1)

我会支持以前的海报,因为使用Mercurial(但记住 - 自己的Subversion / over Apache /更易于管理,来自我的POV)......

但不得不提 - 完全意义上的协作不仅仅是代码(因此 - 选择的SCM),它更多 - 通信,协调行动(在“纯编码”之外):如果你的使命是“必须完成的事情” ,只是* VCS不够。

PS - 对于我的任意时间项目,我更喜欢使用Assembla,现有空间中的新回购或使用项目所需工具集的全新空间

答案 1 :(得分:0)

我认为“协作”工具是指源代码管理/修订控制,因为你以SVN为例。

似乎CVS和SVN等集中式修订控制系统的日子已经过编号,对于小型或短期项目来说,运行它们的开销似乎特别不合理。

在个人和专业方面,我已成功迁移到Mercurial。它是用Python编写的(因而是跨平台的),并且具有比Git更为优越的用户体验(恕我直言),它是其主要的“竞争者”。

如果您想模仿CVS和SVN的工作方式,设置一台服务器作为“权威”存储库相当容易。您还可以以完全分布式的方式工作,在客户端之间推送变更集。

要试一试,请在您的平台上安装并尝试:

hg init MyTestRepo
cd MyTestRepo
touch SampleFile.c
hg add SampleFile.c
hg commit
hg log

这应该让您了解工作流程以及您喜欢它的程度。互联网上的教程比比皆是,可以帮助您继续在实际项目中使用。

答案 2 :(得分:0)

任何版本控制系统都会为您提供一个"协作工具"。这是版本控制系统的主要作用:为开发人员提供一种结构化的方式来协同工作。

我更喜欢Mercurial,因为它重量轻,速度快,分布均匀。所有平台都有(图形)客户端:TortoiseHg(Windows,Linux,Mac),MacHgSourceTree(Mac)。