2012-11-15 106 views
0

我正在考虑从一个中央存储版本系统转移到git。我对如何影响源代码安全性有一些担忧?我知道版本控制系统在这里并不是我的问题,我不能担心源代码的可用性会如何影响开发人员处理它的方式。有人对此有经验吗?迁移到分布式版本系统时,泄漏风险会增加。我需要更具体地担心什么?可以做些什么来保证我的资料来源安全?Git与专有代码

+0

有没有例如标记与检查出来的用户的回购协议? –

+1

你特别关注什么?使用集中的VCS,您的开发人员仍然拥有完整的代码副本,而不是项目历史记录。 – asm

回答

1

一旦有人获得了源代码的副本,无论是git,svn还是某些高端解决方案,您总会冒着有人复制它的风险。 Git确实给了那些偷走它的人比其他一些源控制解决方案更多的历史。

这就是说,我们使用gitolite,您可以使用ssh密钥管理来控制谁可以访问个人回购以及他们可能拥有哪些访问控制。您也可以在服务器上实现挂钩来记录使用情况。

1

我对大多数集中版本控制系统不是很熟悉,主要是svn。但至少在开发者可以通过向服务器请求的情况下访问整个项目历史。他们甚至可以使用git-svn来创建自己的具有该历史记录的git存储库。

即使有一些版本控制系统会阻止访问历史记录,开发人员仍然需要能够获得可能具有绝大多数价值的当前版本的完整副本。

没有办法标记谁签出了副本,即使没有任何东西可以阻止某人想要释放该代码而不希望删除任何此类标记。

1

分布式VCS和集中式VCS的安全性相同。大多数人也将Git作为集中式VCS运行 - 它绝对适合这一点。唯一的区别是版本历史记录可供本地客户使用。

可以添加一个Hook来检查谁在回购中做什么,如果它是严重的问题。