使用哪个版本控制系统?

我不太确定这个问题是否属于这里,但无论如何,我会问,我的问题是,我需要一个版本控制系统,用户将在网上使用(在浏览器上)来修改和提交代码块, 我当然知道git,我知道它能够处理它(当然,我需要一个相当复杂的API层),但是,它真的是正确的工具吗?

  • 用户能够得到存储库中内容的感觉列表,具有相应的版本ID或者至less最新的版本。
  • 用户能够获得所有模块版本的列表。
  • 用户可以创build新的模块。
  • 用户能够对模块进行更新请求。
  • 用户(哪些特权)能够接受更新请求,从而创build新版本。
  • 在这个更新版本后面的用户能够获得他的新版本不是基于新版本的数据,并且应该(可能)修复。
  • 用户可以将草稿保存在正在处理的内容中,以便以后继续使用。
  • 用户能够看到他们所有的贡献。
  • 用户可以看到正在进行的所有工作。
  • 外部服务器能够看到用户的所有贡献。
  • 外部服务器能够获取任何文件的任何版本。
  • 一个外部服务器能够得到一个真正全面的服务器中有什么版本id的列表来检查是否有什么改变(基于这个build立网站本身)
  • 外部服务器可能能够标记更新(它们是否为特定语言的生产就绪)并对其进行search(可选我可以将其数据库)

我需要,或多或less没有别的; 我不想重蹈覆辙,我认为可以基于现有的工具构build一些东西,我不知道哪一个最适合,因为我一直使用git。 我不太确定它是否可以做到这一点。