版本控制工具(git/svn/hg)能否保护项目部分代码不被每个人访问到?

47 views
Skip to first unread message

Kermit

unread,
Feb 28, 2011, 8:24:01 PM2/28/11
to SZLUG, sh...@googlegroups.com
Dear all,

如果公司内部有些业务涉及到一些安全敏感的业务,所以不希望所有的代码都
能够被每个成员访问到,从而防止代码泄漏给客户造成损失。 但同时,又希望使
用版本控制工具来保证项目的开发质量,不知到有没有这样的解决方案?

例如,项目Project有4个子目录App,Lib,include和Safe。其中Safe是一些核
心算法或者安全性敏感的代码,App是用应用代码,Lib是从include 和Safe生成的
二进制Lib。
现在希望只有少数成员能够有访问Safe目录,而其他成员则只能访问其他三个
目录。当Safe中的算法更新时,会更新Lib下的相应库,应用层成员只需要用指定
脚本更新这些库就可一进行本地和设备上的调试。
不知git/svn/hg这些工具能否满足这个要求,注:这4个目录最好能够在同一
个工程下。


Thanks
B.R
Kermit

机械唯物主义 : linjunhalida

unread,
Feb 28, 2011, 8:29:30 PM2/28/11
to sz...@googlegroups.com
这样的需求, 本质上来说应该隔离版本库, 只发布so和.h文件给其他开发者.
git能够做子版本库, hg应该也可以, 但是不知道如何弄..

2011/3/1 Kermit <kermi...@gmail.com>:

Kermit

unread,
Feb 28, 2011, 8:32:28 PM2/28/11
to sh...@googlegroups.com, SZLUG
On Tue, 2011-03-01 at 09:28 +0800, Doyle wrote:
> 充分利用分支/克隆功能即可

能否提示一下怎么用? 我可以用分支来约束写权限,但是clone的时候都是全部
pull下来的,这个怎么限制呢?

B.R
Kermit


> 2011/3/1 Kermit <kermi...@gmail.com>:

Microtiger

unread,
Feb 28, 2011, 8:35:07 PM2/28/11
to sz...@googlegroups.com
svn可以做到!我们就是用svn来管理整个项目过程中所涉及到的各种资源和成果!
完善下svn的管理,赋予项目成员不用的权限,组织好svn服务器目录。
这个需要花时间来好好做个规划!
I want to be a complete engineer - technical genius and sensitive humanist all in one!

taco

unread,
Feb 28, 2011, 8:39:54 PM2/28/11
to sz...@googlegroups.com
确定SVN是何以做到的;
git应该也可以吧,这么优秀的版本控制工具,但是想想git如果有的话会会违反了open的精神?

2011/3/1 Microtiger <micro...@gmail.com>

Kermit

unread,
Feb 28, 2011, 8:43:22 PM2/28/11
to sz...@googlegroups.com
On Tue, 2011-03-01 at 09:39 +0800, taco wrote:
> 确定SVN是何以做到的;
> git应该也可以吧,这么优秀的版本控制工具,但是想想git如果有的话会会违反
> 了open的精神?

我其实更想用git,但git是Linus为Kernel定制的作品,担心它确实从精神上不知
持这个功能。
实在不行就研究用SVN弄吧。如果没有网络环境,我自己export一个本地的出来用
git管理。

B.R
Kermit


> 2011/3/1 Microtiger <micro...@gmail.com>
> svn可以做到!我们就是用svn来管理整个项目过程中所涉及到的各种资

杨城

unread,
Feb 28, 2011, 9:20:02 PM2/28/11
to sz...@googlegroups.com

git也不是不行,做成外部链接。过年期间看了一下《版本控制之道----使用Git》,在南山书城有借。
其实这种是防君子不防小人的,就算是SVN,只要知道你的密码后,使用git svn clone一样可以获得。
想一下什么是真实的公司实力,其它的看淡一些。

杨城

Kermit

unread,
Feb 28, 2011, 9:55:54 PM2/28/11
to sz...@googlegroups.com

密码当然不会随便泄漏了,只要保证到这一层应该就够了,真的遇上高手那也
没治。

恩,最后一句说得很有道理。但在国内,不要说很多管理者不拿么想,很多员
工估计也不那么想。听说Google内部员工可以访问到公司的全局代码,我想这要是
国内,不要说Google用户的安全性得不到保证,就连市场上恐怕早已山寨出好多
Google了。

B.R
Kermit

sniperpr

unread,
Mar 1, 2011, 12:22:37 AM3/1/11
to sz...@googlegroups.com
kermit, 来我这里. 
我这里有本git的中文版本书.<< 版本控制之道----使用Git>>  ,不过写的真的很一般,没有任何经验而言,就是工具书. 你如果需要,可以借走看. :)
网上有 差不多的版本. http://progit.org/book/zh/

你的要求我没拿git和 hg做过,但是svn我有做.应该达到了你描述的要求.


两篇我写的blog中间涉及到了 svn的权限管理. 不要去理解trac,这样会扰乱你的思路.

如果还有问题,下次聚会在一起探讨探讨. :)

Kermit

unread,
Mar 1, 2011, 12:42:31 AM3/1/11
to sz...@googlegroups.com, linux_pro
On Tue, 2011-03-01 at 13:22 +0800, sniperpr wrote:
> kermit, 来我这里.
> 我这里有本git的中文版本书.<< 版本控制之道----使用Git>> ,不过写的真的
> 很一般,没有任何经验而言,就是工具书. 你如果需要,可以借走看. :)

> 网上有 差不多的版本. http://progit.org/book/zh/
>
>
> 你的要求我没拿git和 hg做过,但是svn我有做.应该达到了你描述的要求.
>
>
> http://blogold.chinaunix.net/u/10884/showart.php?id=2421306
> http://blogold.chinaunix.net/u/10884/showart.php?id=2478728
>
>
> 两篇我写的blog中间涉及到了 svn的权限管理. 不要去理解trac,这样会扰乱你
> 的思路.
>
>
> 如果还有问题,下次聚会在一起探讨探讨. :)

喔,太好了,我先看看你给的资料Link,下次向你好好学习下,哈哈!


B.R
Kermit

彭琪

unread,
Feb 28, 2011, 11:59:07 PM2/28/11
to sh...@googlegroups.com, Kermit, SZLUG
何不考虑建两个repository呢,App, Lib, include为一个,Safe为另一个

2011/3/1 Kermit <kermi...@gmail.com>



--
Perry | 彭琪
perr...@gmail.com

jianq...@sohu.com

unread,
Mar 1, 2011, 9:42:54 AM3/1/11
to szlug




----- 原文 -----

发件人: Microtiger
主 题: Re: 版本控制工具(git/svn/hg)能否保护项目部分代码不被每个人访问到?
时 间: 2011年3月1日 09时35分07秒
 我们公司也是用SVN

MeaCulpa

unread,
Mar 1, 2011, 5:38:26 PM3/1/11
to sz...@googlegroups.com
单从一个分支来说,
svn是dir based 权限,所以是最容易管理的,但是这里很多人不喜欢集中式管理的。如果要分布式的,就不知道了

分布式最初的的根本就是每个人本地都有一个repo的全部,这本身就是反权限管理的,东西都在那里了,总有办法解密

某些git教用户喜欢git for all, 所以git的扩展模块不少,哈哈

ZHANG, Le

unread,
Mar 9, 2011, 8:58:53 PM3/9/11
to sz...@googlegroups.com
2011/2/28 Kermit <kermi...@gmail.com>:

这个好像确实是这样
可惜google用的还是很旧的scm,perforce

--
ZHANG, Le
http://zhangle.is-a-geek.org

Reply all
Reply to author
Forward
0 new messages