svn——svn commit 用法
转载 原文:https://blog.csdn.net/qq_39790633/article/details/103700391
使用svn进行代码的提交有两种方法:一种是通过TortoiseSVN客户端界面进行提交,另一种是通过svn commit指令提交。
方法一:通过TortoiseSVN客户端界面提交代码
- 在需要提交代码的目录下右键,点击SVN Commit…
- 此时会进入SVN的Commit界面,在[Message]处填写需要备注的信息,在Changes made区域选中需要提交的文件,最后点击OK即可提交。提交后会弹出一个框提示是否提交成功。
- 提交完成后若想查看是否提交成功,可以在提交目录下右键 -> TortoisesSVN -> show log 查看代码提交记录,有提交记录即为提交成功。
方法二:通过 svn commit命令提交
svn commit path -m "Message"
- path:要提交的文件路径
- “Message”:提交文件说明
具体提交过程如下:
- 切换到要提交文件路径,然后执行 svn status(查看本地文件未提交的变更)
从上图可以看出本地的MainActivity.java文件和main.xml文件相对于服务器中的版本是修改过的。
而第一行的png图片在服务器中的版本是没有的,状态显示为?则为未加到版本控制中的意思。如果此时svn commit,main.xml和MainActivity.java文件会上传,而png图片则不会上传。
如果png图片也想要上传,首先要将png图片加入版本库:svn add path1 path2(多个路径)
svn add path就是将path下的文件加入到本地的版本库中,此时再次执行svn status的话会看到刚才svn add的文件前面的标记不是?而是A了,表示已经成功把此文件添加到版本控制中。最后一步提交文件:svn commit path1 path2 -m"Message"(可以提交多个路径的文件)
执行后会显示出结果,如上图,Adding就是已添加,Sending就是已替换文件。
在完成提交之后,就可以通过 svn log 来查看提交日志信息。
可以看到刚才提交的741版本已经显示出来了。
另:如果svn status后看到有的文件已经被自己修改,或者被自己手动纳入版本控制了,但是不想commit到服务器中的话可以使用svn revert(将本地文件恢复到服务器中的同名文件)
例子:
svn status查看状态 此时本地文件夹中有三个服务器中没有的文件
如果想把.project文件纳入svn版本控制,执行svn add .project,然后再svn status查看状态,.project已被纳入版本控制
但是如果不想把.project文件纳入版本控制了,那么可以执行 svn revert .project(回滚到服务器上最新的版本,如果需要整个文件夹回滚,则执行 svn revert -R path)
这样就可以恢复了,后面如果要提交的话再参考上面的方法一二进行操作。
扩展:svn add 相关指令
svn add path —— 把path路径下的文件/文件夹(里面的文件也包含)全部纳入版本控制
svn add folder --non-recursive —— 把文件夹folder纳入版本控制,但是folder文件夹里的文件不添加(non-revursive 不递归)
==svn add * == —— 把当前目录所以未添加到版本控制的文件全部添加进去 (如果有文件夹是non-revursive的则不添加该文件夹里的文件)
svm add * --force —— 把当前目录所以未添加到版本控制的文件全部添加进去(包括non-revursive的文件夹里的文件,包括和服务器中存在的相同的文件(将会覆盖))
svn add . --no-ignore --force —— 把当前目录下所以未添加的文件(包括.project文件等,不忽略任何文件)添加到版本控制中
svn——svn commit 用法相关推荐
- 改进的SVN的Commit权限控制
源代码管理软件Subversion是继CVS后的又一个强力开源软件,现最新版本为1.2,开始支持lock模式了.(更坚定了我 使用它的决心)而当我们使用它的svnserve提供服务时,要实现目录级的验 ...
- svn ignore 的用法
主要就这么几句: cd Application svn delete Runtime/* svn ci -m 'delete Runtime' svn propset svn:ignore'*' Ru ...
- 使用SVN的commit上传如何全选文件
使用SVN的commit上传如何全选文件 commit文件太多,全选在文件上面一栏,见下图 不要一个个点啦!
- svn提示svn: E170001: Commit failed (details follow):解决
设置好防火墙和阿里云服务器控制台防火墙之后还会出现 svn: E170001: Commit failed (details follow): svn: E170001: Authorization ...
- svn: Aborting commit: '/aaa/bbb/xxxxxxxx' remains in conflict解决方法
$ svn commit -m "zzzzzzzz" svn: Commit failed (details follow): svn: Aborting commit: '/aa ...
- 解决svn: E160028: Commit failed (details follow): svn is out of date问题
1 问题 解决svn: E160028: Commit failed (details follow): svn is out of date问题 2 分析 项目太久未同步了 3 解决问题 更新项目再 ...
- SVN Aborting commit: ‘XXXXXXXX’remains in confl...
2019独角兽企业重金招聘Python工程师标准>>> 今天在提交项目文件到本地SVN时提示错误如下: 过期:"global.php"在事务"21-1& ...
- 什么是SVN?SVN的简介安装和使用
目录 1.SVN 1.1什么是SVN 1.2SVN的作用 1.3常见的版本控制工具 1.4SVN的使用 1.4.1SVN基本使用原理 1.4.2SVN使用模式 1.4.3SVN工作方式 1.5SVN ...
- Cannot checkout from svn: svn: E155000: ‘XXX‘ is alrea
Cannot checkout from svn: svn: E155000: 'XXX' is alrea 原因1:svn地址错误 输入的svn地址不对,仔细检查一下 原因2:svn 冲突 新建的这 ...
最新文章
- 如何区别一幅图像是否是黑白图像
- 【读书笔记】《写给大忙人看的Java SE 8》——Java8新特性总结
- 在datatable中,在指定位置插入列
- Android系统架构图
- mount --bind的用处
- Python自动化运维之高级函数
- ICLR 2020 | Bengio 一作论文:因果机制、元学习与模型泛化如何产生关联?
- 01.Elasticsearch安装
- limitBy过滤器是配合数组使用的,限制数组元素的个数,话不多说,来个小例子。...
- 不使用服务器控件的ASP.NET
- 技术人成长路径之我见
- linux常用指令(持续更新……)
- RabbitMQ消息幂等性之全局唯一ID
- rs485与modbus流程图_RS485通讯基础及通讯应用详解
- 飞机遭遇时空乱流离奇穿越到30年前
- 对接有道翻译api中英翻译软件
- ZOJ - 3939(日期规律)
- 怎么删除android系统自带软件,手机系统自带的那些软件不用却卸载不了,怎么办?...
- PC按键精灵读取txt文本出现乱码怎么办?按键精灵手机助手读取txt文本中文变问号怎么办?
- Spring AOP 标签形式及Around增强处理