Mac下SVN基本操作和常见错误
一、基本操作
1 从服务器上下载代码
svn checkout http://xxx.xxx.xxx/xxx
2 获取最新的代码
svn update
3 提交代码
svn commit -m 'comment'
4 撤销本地未提交的所有操作
svn revert --recursive .
5 建立远程分支
svn copy http://.../sdk/trunk http://.../sdk/branches/branch1 -m 'create branch1'
6 添加目录并提交
1)在本地建立test文件夹
2)svn add test
3)svn commit -m 'comment'
7 删除文件和文件夹,比如一个名为test的文件夹,内含一个名为abc的文件
在本地进入到该test文件夹所在的上级目录
输入命令svn rm test
看到如下的显示
D test/abc
D test
再提交一下:svn commit -m 'delete test folder'
(注意,提交之前要先到根目录下执行svn update,否则可能会报out of date的错误,意思是说服务器上的代码比本地的代码新)
看到如下的显示
Deleting branches/test
至此,删除成功。本地和远程都不再有test目录
8 远程主干合并到本地分支
1)svn commit -m 'some comment'(提交本地主干里的变化)
2) svn update(更新一下,否则会报错)
3) svn merge -r 版本号一:版本号二 主干svn地址 本地分支路径 (远程主干中版本号一和版本号二之间的变化合并到本地分支)
这里版本号一不算在内,而版本号二算在内。比如1110:1113,则合并的版本号为1111,1112,1113
如果当前路径恰巧就是本地分支路径,则本地分支路径可以不写
例子:svn merge -r 1110:1113 http://.../sdk/trunk/
若版本号二写成head或HEAD,则表示更新到最新的版本。如svn merge -r 1110:head http://.../sdk/trunk
4)svn commit -m 'some comment' (本地分支中获得的更新提交到远程分支)
注意:远程分支合并到本地主干、本地主干合并到本地分支、本地分支合并到本地主干也是上述步骤。
SVN合并只能在远程和本地、本地和本地之间进行,不能在本地和远程、远程和远程之间进行。
9 解决冲突
若有冲突,解决完冲突后,要用命令svn resolved 路径
例子:svn resolved dir1/dir2/file.m
10 帮助命令
svn help resolved
此命令可以查看resolved相关的参数和功能
11 查看版本提交日志
svn log
svn log -l15(查看最近15次的改动信息)
12 删除分支
svn rm http://.../branches/log_branch -m 'delete comment'
svn remove http://.../branches/log_branch -m 'delete comment'
svn delete http://.../branches/log_branch -m 'delete comment'
13 创建远程目录
svn mkdir http://.../branches/my_branch -m 'create my branch directory'
14 svn模拟合并,可以看到操作后的结果但不会真正操作
svn merge --dry-run
15 回滚
假如提交的版本2409,提交之后就是2410。这时发现提交的代码有问题,想回滚到2409,可以用如下命令:
svn up -r 2409
二、常见错误
1 操作:
svn commit -m 'delete svntest'
Deleting svntest
svn: E155011: Commit failed (details follow):
svn: E155011: Directory '/XXX/svntest' is out of date
svn: E170004: Item '/XX/svntest' is out of date
解决:
先在根目录执行svn update,然后再执行svn commit -m 'delete svntest'
Mac下SVN基本操作和常见错误的更多相关文章
- mac下svn问题——“.a”(静态库)文件无法上传解决
mac下svn问题——“.a”(静态库)文件无法上传解决 “.a”(静态库)文件无法上传(svn工具:Versions) 网上查询了一下,说是Xcode自带的svn和Versi ...
- 【iOS】Mac下SVN的服务器搭建
在协同开发中,版本控制是必备的.完全不敢想象团队都在用U盘.QQ管理代码的景象.但是svn不像git,拥有众多免费的代码库,如果在同 一局域网下,搭建svn服务端来同步代码是很有必要的.本文将详细讲解 ...
- Mac下SVN服务器环境的搭建和配置(除展示图片外,所有命令在Linux/Unix下适用)
这几天领导没有安排工作,闲着没事就想把自己这两年做iOS开发时感觉知识有欠缺的地方想好好深入地补习一下,昨天和今天就计划好好学习下SVN和git的从创建和到原理,到命令,到界面的使用.一不小心被另一领 ...
- SVN中的常见错误(长期更新)
一 svn中的简写含义. A:add,新增 C:conflict,冲突 D:delete,删除 M:modify,本地已经修改 G:modify and merGed,本地文件修改并且和服务器的进行合 ...
- mac下SVN上传.a静态库文件
在mac下很多svn管理工具默认都不能上传.a文件,但是用命令行可以解决此问题. 打开终端,cd 进入到需要上传的.a文件所在的文件夹. 确保 ls能看到.a文件 然后使用命令,如:svn add l ...
- Sublime Text 2下搭建Python环境常见错误
Sublime Text 2下搭建Python环境时,最容易出的错误就是Python环境配置错误,导致build(Ctrl+B)后没有任何反应. 关于Python编程环境的配置,网上很容易搜索到.先默 ...
- svn状态与常见错误
TortoiseSVN 1.6.16是最后一个目录独立管理自身cache的svn版本(每个目录下都有一个隐藏的.svn文件夹) 之后的版本会则会根目录上统一进行管理(只有根目录下有一个隐藏的.svn文 ...
- Mac 下 SVN 的使用
在Windows环境中,我们一般使用TortoiseSVN来搭建svn环境.在Mac环境下,由于Mac自带了svn的服务器端和客户端功能,所以我们可以在不装任何第三方软件的前提下使用svn功能,不过还 ...
- 【Tech】mac下svn和scp使用笔记
1.命令行从svn下载代码 mac本身自带svn,所以使用非常简单,在本地创建代码存放的文件夹,然后cd到该文件夹下,运行: svn checkout svn://ip地址/文件路径 . 然后出现要求 ...
随机推荐
- Leetcode867.Transpose Matrix转置矩阵
给定一个矩阵 A, 返回 A 的转置矩阵. 矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引. 示例 1: 输入:[[1,2,3],[4,5,6],[7,8,9]] 输出:[[1,4,7] ...
- golang之数据结构
4种:bool/int/uint/uintptr(其中bool类型的零值为false,其余类型的零值为0) 4种:float32/float64/complex64/complex126 (零值为0) ...
- Liferay 7 OSGi第三方jar包依赖问题
发现遇到这个问题的人挺多的,现在跟新一下好好写. 在开发Liferay的时候,我们常常会遇到Unresolved requirement: Import-Package: {package name} ...
- PHP学习(数据类型)
PHP中,支持8种原始类型,其中包括四种标量类型.两种复合类型和两种特殊类型.PHP是一门松散类型的语言,不必向PHP声明变量的数据类型,PHP会自动把变量转换为自动的数据类型,一定程度降低了学习PH ...
- CSS user-select文本是否可复制
1. 概述 1.1 说明 在项目过程中,有时候需要网页中内容信息不可被复制进行保护数据信息,故可使用css属性user-select进行控制用户能否选中文本. 1.2 语法 user-select : ...
- iOS开发 底层抛析运行循环—— RunLoop
http://blog.csdn.net/zc639143029/article/details/50012527 一.RunLoop基本概念 概念:程序的运行循环,通俗的来说就是跑圈. 1. 基本作 ...
- python 字符串匹配的应用
- VIM中空格和TAB的替换
在.vimrc中添加以下代码后,重启vim即可实现按TAB产生4个空格:set ts=4 (注:ts是tabstop的缩写,设TAB宽4个空格)set expandtab 对于已保存的文件,可以使用 ...
- Python学习之路13☞常用模块
一 time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行“type(t ...
- maven 标签: 项目管理软件 2016-09-11 22:29 323人阅读 评论(24) 收藏
开始接触itoo的java项目之后,也就开始接触maven,搭建环境中有一个步骤是配置maven和jboss,当时知道jboss是用来部署我们的项目的,但是maven就只知道一个更新maven,那么, ...