Linux 下svn工具使用与NTFS权限问题解决
作者: 西格玛 分类: IT悟语, Linux 标签: Linux, Svn 评论: 0
最近开始使用svn工具管理一些项目,能够方便快捷地进行版本的控制,也能够实现多人配合工作。
先简单介绍一下svn工具配合googlecode托管项目的使用
一、 SVN工具
Subversion 是一个自由开源的版本控制系统。 在Subversion管下,文件和目录可以超越时空。Subversion将文件存放在中心版本库里。这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况。于是我们就可以籍此将数据回复到以前的版本,并可以查看数据的更改细节。正因为如此,许多人将版本控制系统当作一种神奇的“时间机器”。
关于SVN工具详见:http://www.subversion.org.cn/?action-channel-name-product#download
SVN客户端下载:
Windows常用客户端TortoiseSVN:http://tortoisesvn.net/downloadsAnkhSVN(Visual Studio插件):http://ankhsvn.open.collab.net/Subclipse(Eclipse插件):http://subclipse.tigris.org/SCPlugin(Mac OS x客户端):http://scplugin.tigris.org/linux下一般用svn命令(subversion),方便快捷。
二、 Google Code项目托管
Google Code http://code.google.com
是一个代码托管站点,用于全世界的开源爱好者分享其代码并协同工作。
选择“项目托管”-> “贡献开放源代码项目”
在出现的页面中找到“create project” 创建一个新项目 此网址如下
在上面写好项目名称,描述等,在Version control system中选择Subversion 工具 选择一个规范证书(任选)
SIGMA_I cpu项目的项目名称为sigmacpu
网址如下
项目管理详情请参见http://code.google.com 的官方说明。
三、 参与项目和管理代码
首先向管理员申请加入项目。
加入后,用Gmail账号登陆项目网站,点击Sources
点击上面的googlecode password 记录密码以便以后使用
四、 Linux下svn工具的配置与使用
我使用的系统为Gentoo linux 用protage可以轻松的emerge svn工具:
用emerge dev-util/subversion即可安装
如果是ubuntu系统可以参考:
安装成功后 就可以使用svn命令管理项目了
对于一个项目,这里以在googlecode上托管的项目为例,我的项目地址为:https://sigmacpu.googlecode.com
那么项目文件的位置就是https://sigmacpu.googlecode.com/svn/trunk/
svn命令的参数格式为: svn [option] https://xxxx.googlecode.com/svn/trunk/ 目标项目文件夹名 (–username=用户名 –password=密码)
更多操作细节可以参看次牛人的博文
为了更加方便的进行管理,可以编写脚本来实现特定项目的更新、提交等操作,这里我写了一个脚本用来chectout最新项目文件
#!/bin/bashcd /项目所在文件夹svn co https://sigmacpu.googlecode.com/svn/trunk/ sigmacpu –username=xxxx –password=xxxxxx
至此,svn工具的简单设置就完成了
但是在svnco的过程中,系统提示我权限不足,无法创建文件:
svn: Can’t set permissions on ‘project/.svn/tempfile.2.tmp’: Operation not permitted
google一下,发现是ntfs分区加载时的权限问题,ntfs文件系统一般使用ntfs-3g工具挂载,并通过/etc/fstab文件指定挂载方式 文件中表述如下:
/dev/sda3 /mnt/files ntfs-3g silent,umask=xxx,locale=zh_CN.utf8,uid=xxx,gid=xxx 0 0分区 挂载点 工具 选项
uid与gid指明了此分区挂在后的owner用户与组信息,可以通过id命令获取这个信息
#id 用户名
将你的用户uid与gid填入选项,umask与权限设置中的umask原理相同例如umask=022则此文件系统的默认权限为:rwxr-xr-x
设置好后,问题解决,可以方便得用svn管理项目了。
| anyShare分享到: | |
| |
04-08
2010
