如何在ubuntu下用SVN commit
-
- 帖子: 4
- 注册时间: 2009-02-04 9:48
如何在ubuntu下用SVN commit
我安装完svn后,只能update文件,但不能上传文件,请问在ubuntu中有关svn的操作,谢谢。
这跟权限没关系,因为我在windows下用相同帐户可以上传。我需要的是如何在ubuntu下操作。wiki只有教如何安装和更新,但没有说如何上传。如果能找到麻烦给我网址,谢谢。
这跟权限没关系,因为我在windows下用相同帐户可以上传。我需要的是如何在ubuntu下操作。wiki只有教如何安装和更新,但没有说如何上传。如果能找到麻烦给我网址,谢谢。
上次由 lincaorain 在 2009-02-04 10:11,总共编辑 2 次。
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
- lerosua
- 论坛版主
- 帖子: 8455
- 注册时间: 2007-11-29 9:41
- 联系:
Re: 如何在ubuntu下用SVN commit
ee问到点上了~ 支持一下
- anticlockwise
- 帖子: 2394
- 注册时间: 2007-03-01 20:46
- 来自: 湖南长沙
Re: 如何在ubuntu下用SVN commit
Linux(包括Ubuntu)的SVN是没有问题,SVN最开始的客户端就是从Linux开始的。我整天都要做svn commit……lincaorain 写了:我安装完svn后,只能update文件,但不能上传文件,请问在ubuntu中有关svn的操作,谢谢。
这跟权限没关系,因为我在windows下用相同帐户可以上传。我需要的是如何在ubuntu下操作。wiki只有教如何安装和更新,但没有说如何上传。如果能找到麻烦给我网址,谢谢。
如果你能提供你svn commit之后的错误信息的话,我们也许能够帮忙解决
-
- 帖子: 4
- 注册时间: 2009-02-04 9:48
Re: 如何在ubuntu下用SVN commit
搞定了, 我好蠢 svn commit 就是操作, 还问. 晕.
- lerosua
- 论坛版主
- 帖子: 8455
- 注册时间: 2007-11-29 9:41
- 联系:
- anticlockwise
- 帖子: 2394
- 注册时间: 2007-03-01 20:46
- 来自: 湖南长沙
-
- 帖子: 3
- 注册时间: 2009-09-22 18:24
Re: 如何在ubuntu下用SVN commit
我在命令行终端使用了svn commit -m "......" 没有任何的提示,正常应该是显示Sending ... reversion ...,我记得以前是这样的。但现在是怎么回事呢?当我使用 echo $?,显示0,证明是成功了。有无高人知道原因呢?
-
- 帖子: 6548
- 注册时间: 2008-10-31 22:12
- 系统: 践兔
- 联系:
-
- 帖子: 1
- 注册时间: 2009-05-13 9:14
Re: 如何在ubuntu下用SVN commit
svn ci . -m ""
- zhu527812567
- 帖子: 883
- 注册时间: 2009-11-17 12:29
- 联系:
Re: 如何在ubuntu下用SVN commit
- -很多软件都是静默的。。kingsun 写了:我在命令行终端使用了svn commit -m "......" 没有任何的提示,正常应该是显示Sending ... reversion ...,我记得以前是这样的。但现在是怎么回事呢?当我使用 echo $?,显示0,证明是成功了。有无高人知道原因呢?
- nicegiving
- 帖子: 125
- 注册时间: 2008-07-03 19:25
Re: 如何在ubuntu下用SVN commit
下面的一些SVN操作我想正是楼主需要的:
(注:下面所涉及的svn操作都是在自己的电脑上面离线进行的,用户的工作电脑和svn服务器都是同样的一台电脑,由于用户只有一个,所以并没有什么身份验证的东西,不过对于个人用户来说,已经足够了。)
安装我就不必说了,一个简单的命令: sudo apt-get install subversion
假设你的项目工作路径(你刚开始建立的项目工作路径,没有进行过任何svn操作)为:/home/zzm/myproject
#建立一个名为 myproject 的 repository
svnadmin create /home/zzm/svn-repo/myproject
#把 /home/zzm/myproject 下的内容导入到svn的版本库中,并建立一个本项目的版本库,版本号是 1。
svn import -m "这是大爷的项目的第一个版本,刚刚导入的" /home/zzm/myproject file:///home/zzm/svn-repo/myproject
现在我想跟你说一个概念,就是svn中的working copy,实际上我们在上面一共建立了两个文件夹,一个是你的项目文件夹:/home/zzm/myproject,另一个是你的项目的版本库文件夹:/home/zzm/svn-repo/myproject,这两个文件夹都不是所谓的working copy,真正的working copy是负责直接和版本库进行同步和记录操作的,在working copy文件夹内,有一个隐藏的.svn文件夹。通常我都不是在working copy文件夹里面直接操作,而是另一个地方编辑文件等,然后把在另一个地方改动的东西直接拷贝到working copy里面,然后执行commit命令进行版本的维护。要建立你的working copy只有使用checkout命令:
#建立一个名为 my_working_copy 的 working copy
svn checkout file:///home/zzm/svn-repo/myproject my_working_copy
(根据你文件多少会有很多的输出,最后会告诉你当前你checkout的版本)
#实际上你可以使用checkout命令获得项目的任意一个版本的全部内容,执行命令:
svn checkout file:///home/zzm/svn-repo/myproject my_working_copy_version_number -r version_number
(version_number即是你所要获得的项目版本的版本号,比如1,2或者3等)
#如果你改变了你的working copy里面的内容,需要保存这次改变,即向版本库中添加一个版本,使用commit命令:
svn commit -m "大爷我添加了几张图片,更新了项目的企划"
(确保你终端当中的当前路径是你的working copy的路径,才能正确的执行本次命令)
#经过几次commit之后,你可能有很多的版本在版本库里面,通过输入下面的命令可以查看各个版本的情况:
svn log path
(path是你想要查询的working copy的路径,如果你在这个路径下面输入的命令,可以省略path)
----------------------------------
千万注意的内容:
你在你的working copy目录中作文件操作时,比如删除或移动文件,不能直接用终端当中的命令 rm, mv 来进行,这样 svn 不能追踪到文件的变化,当你使用commit命令提交的时候,你不会得到任何的结果,想要让svn追踪你的变化你必须使用 svn del 或是 svn move 来完成删除或移动的操作,比如:
# 我拷贝了一个文件到working copy中,需要让svn知道我拷贝了一个文件:
svn add filename
# 其他的:
svn move filename /home/zzm/my_working_copy/new_folder/aa
svn rename filename1 filename2
svn del filename
差不多了,上面的东西已经足够个人用户使用了,楼主还有什么问题的话可以回帖询问。
希望上面的内容对你有所帮助!
Good luck!
(注:下面所涉及的svn操作都是在自己的电脑上面离线进行的,用户的工作电脑和svn服务器都是同样的一台电脑,由于用户只有一个,所以并没有什么身份验证的东西,不过对于个人用户来说,已经足够了。)
安装我就不必说了,一个简单的命令: sudo apt-get install subversion
假设你的项目工作路径(你刚开始建立的项目工作路径,没有进行过任何svn操作)为:/home/zzm/myproject
#建立一个名为 myproject 的 repository
svnadmin create /home/zzm/svn-repo/myproject
#把 /home/zzm/myproject 下的内容导入到svn的版本库中,并建立一个本项目的版本库,版本号是 1。
svn import -m "这是大爷的项目的第一个版本,刚刚导入的" /home/zzm/myproject file:///home/zzm/svn-repo/myproject
现在我想跟你说一个概念,就是svn中的working copy,实际上我们在上面一共建立了两个文件夹,一个是你的项目文件夹:/home/zzm/myproject,另一个是你的项目的版本库文件夹:/home/zzm/svn-repo/myproject,这两个文件夹都不是所谓的working copy,真正的working copy是负责直接和版本库进行同步和记录操作的,在working copy文件夹内,有一个隐藏的.svn文件夹。通常我都不是在working copy文件夹里面直接操作,而是另一个地方编辑文件等,然后把在另一个地方改动的东西直接拷贝到working copy里面,然后执行commit命令进行版本的维护。要建立你的working copy只有使用checkout命令:
#建立一个名为 my_working_copy 的 working copy
svn checkout file:///home/zzm/svn-repo/myproject my_working_copy
(根据你文件多少会有很多的输出,最后会告诉你当前你checkout的版本)
#实际上你可以使用checkout命令获得项目的任意一个版本的全部内容,执行命令:
svn checkout file:///home/zzm/svn-repo/myproject my_working_copy_version_number -r version_number
(version_number即是你所要获得的项目版本的版本号,比如1,2或者3等)
#如果你改变了你的working copy里面的内容,需要保存这次改变,即向版本库中添加一个版本,使用commit命令:
svn commit -m "大爷我添加了几张图片,更新了项目的企划"
(确保你终端当中的当前路径是你的working copy的路径,才能正确的执行本次命令)
#经过几次commit之后,你可能有很多的版本在版本库里面,通过输入下面的命令可以查看各个版本的情况:
svn log path
(path是你想要查询的working copy的路径,如果你在这个路径下面输入的命令,可以省略path)
----------------------------------
千万注意的内容:
你在你的working copy目录中作文件操作时,比如删除或移动文件,不能直接用终端当中的命令 rm, mv 来进行,这样 svn 不能追踪到文件的变化,当你使用commit命令提交的时候,你不会得到任何的结果,想要让svn追踪你的变化你必须使用 svn del 或是 svn move 来完成删除或移动的操作,比如:
# 我拷贝了一个文件到working copy中,需要让svn知道我拷贝了一个文件:
svn add filename
# 其他的:
svn move filename /home/zzm/my_working_copy/new_folder/aa
svn rename filename1 filename2
svn del filename
差不多了,上面的东西已经足够个人用户使用了,楼主还有什么问题的话可以回帖询问。
希望上面的内容对你有所帮助!
Good luck!
发帖回帖就是为了解决问题,决不灌水,这年头灌水的太多了!
- nicegiving
- 帖子: 125
- 注册时间: 2008-07-03 19:25
Re: 如何在ubuntu下用SVN commit
[OT] 呵呵,不知不觉我已经发这个帖子超过一年了,真快啊!nicegiving 写了:下面的一些SVN操作我想正是楼主需要的:
(注:下面所涉及的svn操作都是在自己的电脑上面离线进行的,用户的工作电脑和svn服务器都是同样的一台电脑,由于用户只有一个,所以并没有什么身份验证的东西,不过对于个人用户来说,已经足够了。)
......