如何为不同的用户维护不同的存储库以进行编译?

时间:2013-05-22 15:11:02

标签: linux svn permissions compilation user-permissions

我不知道我的问题是否过于明显,过于复杂,甚至是否有意义。我试图找到信息,但无法得到任何答案......

我想为我的用户A保留一个LLVM / Clang的SVN repo,它反映了主要的repo ......或者等价物:我想用用户A编译我的程序,调用clang / llvm并获取工具链的最后一个版本努力编译我的源代码。我希望能够更新我的本地仓库,因为它反映了主要LLVM仓库的最新版本...

但是,我想为用户B保留第二个SVN本地存储,所以当我想修改LLVM代码时,我将在用户B repo中执行。还有更多...如果我将clang / llvm称为用户B,它将使用修改后的LLVM版本编译我的源代码。

简而言之:我如何为2个用户维护2个repos,我可以编译每个用户,并且根据调用clang / llvm的用户,它将调用正确版本的二进制文件?

感谢您的关注;如果我的问题没有得到很好的表述,我道歉并希望有人能指出我如何改进它!

干杯...

1 个答案:

答案 0 :(得分:1)

简而言之......

1)如果用户使用不同的机器:

保留两个包含工具链的SVN存储库。每个用户都将签出自己的存储库并使用“正确”的编译器来编译其代码。这两个工具链位于相同的目录中,每个用户只有一个工具链。

2)如果用户共用同一台机器:

保留两个包含工具链的SVN存储库。这两个工具链位于不同的目录中,可以同时使用。为suers设置环境变量以指定工具链的位置。在Linux上,可以通过在.bashrc中设置变量然后在Makefile中使用这些变量来完成。

在这两种情况下,如果可以的话,切换到git并使用两个分支而不是两个存储库。