使用SVN,如何让其他开发人员覆盖我?

时间:2010-03-09 22:07:21

标签: svn collaboration

我不知道该怎么做。我刚开始在一个真实的项目中使用SVN。我有一切正常。但是,我是唯一使用它的人。现在我想介绍第二个人。

我在我的Windows机器上下载了tortoisesvn并检查了主干线。我可以编辑文件并提交我的新文件。一切正常。

现在,我希望第二个人这样做,而我正在做点什么。通常他可能正在处理另一个文件,我们同意将我们提交的文件导出到测试服务器(我的想法无论如何),但是如果我们正在处理同一个文件呢?例如,配置文件。也许我们都需要改变它。当别人改变它时,我怎么能(或他)保留另一个。如果我们其中一个人提交了新的更新,它将会删除我们中的一个人刚刚放入的内容。不知道该怎么做。

5 个答案:

答案 0 :(得分:9)

使用SVN,目标不是抓取文件并说“这是我的,不要碰它”。目标是在完成后合并您的更改。两个人真正做出不兼容的更改的案例数量很少,当它们发生时,开发人员需要聚在一起以合并它们的最佳方式 - 而不是先争夺谁赢得文件锁。

始终在提交前更新,以便您将更改与您的更改合并。

答案 1 :(得分:6)

不,它不会删除任何东西。

如果两个人更改文件并尝试提交,则第二个提交者将收到一条错误消息,指出该文件自上次更新后已更改。

然后第二个人进行更新。如果SVN可以这样做,它将合并它们,保留两个人的变化。如果它不能(通常只有在你在文件中的同一个地方更改某些内容的情况下),它会告诉你,你将不得不处理冲突。

答案 2 :(得分:2)

这个问题不会发生,因为Subversion(实际上任何体面的SCM)只会让你在执行更新后提交。如果Subversion无法合并您的更改,则会导致冲突,您必须手动解决此问题。

答案 3 :(得分:2)

SVN在极少数情况下会锁定您需要使用它们。有关更多详细信息,请查看SVN书籍的锁定部分。

答案 4 :(得分:2)

听起来您需要对SVN如何工作有基本的了解。建议您阅读Versioning Models中的book部分。

相关问题