c# - 基于 SQL 的存储与 SVN

标签 c# sql svn

我的团队正在开发一个新的应用程序(C#、.Net 4),其中涉及共享用户内容的存储库。我们需要决定在哪里存储它。要求如下:

  1. 在用户之间共享文件。
  2. 支持版本。
  3. 启用按标签搜索并支持进一步查询,例如“X 组人员创建的所有文件”
  4. 不同的人有不同的看法(X 团队可以看到自己的内容,其他人看不到他们的内容)。

我不确定什么是最好的,所以:

  • 我可以使用标签搜索 SVN(当然不是 SVN 标签,更像是 stackoverflow 的标签)?
  • 考虑重复内容(包括 SVN 和 SQL)是否有意义?
  • 还有其他建议吗?

编辑
该应用程序使用户能够编写他们稍后执行的验证测试。这些测试在不同站点的许多组之间共享。我们出于常规原因需要版本控制 - 撤消更改、突然删除等。这需要 SVN。
问题是,我们还想添加一个选项来查找所有标记为“紧急”并且现在已执行的测试,以便进行跟踪。

我希望我现在说得更清楚了:)

编辑二
我遇到了 SvnQuery,它看起来不错,但它有我可以使用的 API 吗?我宁愿将他们的机制与我自己的 GUI 一起使用。

编辑三
我的同事强烈支持只使用数据库而忘记基于文件的存储。他声称这对持久性更好(这是必需的——测试不仅仅是要执行的命令列表)。我非常感谢您就此问题提供意见,因为我认为应该可以通过这种方式或其他方式进行。

谢谢!

最佳答案

首先,考虑使用 GIT 而不是 SVN。它更快,我怀疑它更适合您的用例:它被设计为分布式,这意味着您的用户无需互联网访问即可使用它,并且您不会有任何与服务器通信相关的开销保存文档时。

除此之外,我没有完全理解你的问题,但它的要点似乎可以更好地改写为:“我可以对我的版本控制系统进行基于标签的搜索/访问限制吗,或者我需要在上面创建一个图层吗?”

如果是这样,答案是您需要在顶部添加一层。有些已经存在,既有基于 Web 的(例如 Trac),也有基于桌面的(例如 GitX)。它们不一定会完全实现您的需求,但它们可以是实现您所寻求的目标的良好起点。

关于c# - 基于 SQL 的存储与 SVN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5967194/

相关文章:

MySQL - 如何按 TOP 中的特定值对 Select 进行排序

SVN 仅导出标签中更改的文件

c# - 使用自定义 IComparer 对 CollectionViewSource 进行排序

c# - 如何在构建时将我的类库程序集复制到我的 Web 项目?

mysql - 导入EC2时出现SQL错误键列不存在

svn - 我可以进行 svn 转储并重新设置目录的父目录吗?

svn:E155037:先前的操作尚未完成;如果被中断,请运行 'cleanup'

c# - 如何打印文本文件中隐藏字段的值?

c# - xml 对象中缺少信封标记

sql - 从列表中选择具有特定字符串值结尾的表中的行