想法:SVN监控挂起的提交?

时间:2010-09-23 13:57:21

标签: svn monitor

我想问一下是否有人听说过这种情况的SVN监控工具:过去我们使用MS SourceSafe结账&锁定机制以避免合并。这样做的一个好处是“发布经理”可以在repo中看到whitch文件仍然没有签入.SVN是一个很棒的工具,但有时我会错过这些信息,甚至可以避免大的冲突。是否有一个监控系统可用于查看谁更改了待处理的文件?在每个工作站上收集修改信息的服务/守护程序,将其定期发送到中央服务器和客户端应用程序以查看信息。

这只是一个想法,我不知道我认为合适有意义......

亲切的问候, 岸堤

4 个答案:

答案 0 :(得分:2)

svn在结帐时不要求锁定;但是,它支持锁。所以,如果你的团队对这种工作方式更加满意,我建议你使用svn locking feature

基本上,你比以前有更多的灵活性:

  • 如果开发人员只是想“试一试”,他可以更新他的工作副本并修改文件而不锁定它。

  • 如果开发人员想要专门处理文件(以避免合并),他可以更新他的工作副本,锁定文件,处理它,并在完成后,提交更改并解锁文件

答案 1 :(得分:1)

由于您指的是MS SourceSafe,我意识到您可能处于MS世界,但万一您不是。如果您正在使用Java,Ruby,PHP,Javascript,Android,Flex工作,我建议您切换到IntelliJ IDE,因为它可以很好地查看内置于IDE中的SVN历史记录。您可以看到每个签入(存储库选项卡),以及在该签入中更改的文件(在右侧)。我包括一个屏幕截图就是案例。真的很容易,所以你可以得到困难和诅咒。

alt text

答案 2 :(得分:0)

我不认为这对这些情况真的有帮助。在我看来,当一个版本的所有功能都已完成并经过测试时,它就已准备就绪。当我在我的工作副本中有一个脏文件,因为我试图重构某些东西或测试某些东西时,这不是保留该版本的理由。发布经理提供的信息无法帮助您确定是否已完成发布。

至于检查冲突,检查它的唯一方法是监视存储库。同样,并非我在本地提交的所有脏文件都将被提交。

答案 3 :(得分:0)

如果所有开发人员都在separate branches中进行功能开发,那么在代码合并回主干之前,很容易在SVN repo浏览器中看到每个人都在做什么。这种方法比提出的方法有额外的好处,开发人员可以表示他们正在处理哪些“待定”更改是有意义的(即什么是提交给分支)以及哪些更改只是临时工作(您不会在repo浏览器中看到。)

如果您希望在挂起的主干合并中真正一目了然地查看冲突,可以想象您可以创建一个脚本,尝试将所有功能对分支合并到主干。然后,您可以绘制一个表,该表显示哪些分支组合成功合并以及哪些组合未能合并。要么在提交后挂钩中更新网站上的图表,要么每天将其作为批处理作业安排一次,以便通过电子邮件发送给开发人员。应该比报告回集中服务器的文件监控方案更快地实现。