svn基本的操作流程

刚刚进入一个新的公司,让我接手一个正在进行的项目,我打开终端写下了:svn co svn://192.168.1.1/pro/domain

然后就可以在当前目录里面找到一个叫domain的项目,

cd domain,

我浏览了几行代码,嗯,竟然有bug,我忍不住改了,我要提交了,

svn ci -m 'something'  ,成功。

我又在domain下的app文件夹下添加了几个.php文件,把整个项目都做完了!

我又打开终端:svn add domain/app/*.php 添加成功。

以下是一些常用命令

1、将文件checkout到本地目录

1 svn checkout path(path是服务器上的目录)

2 例如:svn checkout svn://192.168.1.1/pro/domain3 简写:svn co

2、往版本库中添加新的文件

1 svn add file
2 例如:svn add test.php(添加test.php)
3 svn add *.php(添加当前目录下所有的php文件)

3、将改动的文件提交到版本库

1 svn commit -m “LogMessage“ [-N] [--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关)
2 例如:  svn commit -m “add test file for my test“ test.php
3 简写:  svn ci

4、加锁/解锁

1 svn lock -m “LockMessage“ [--force] PATH
2 例如: svn lock -m “lock test file“ test.php
3 svn unlock PATH

5、更新到某个版本

1 svn update -r m path
2 例如:   svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本
svn update -r 200 test.php(将版本库中的文件test.php还原到版本200)   
svn update test.php(更新,于版本库同步。
如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit)
3 简写:svn up

6、查看文件或者目录状态

1 1)svn status path(目录下的文件和子目录的状态,正常状态不显示)
2 【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】
3 2)svn status -v path(显示文件和子目录状态)
4 第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人。
5 注:svn status、svn diff和 svn revert这三条命令在没有网络的情况下也可以执行的,原因是svn在本地的.svn中保留了本地版本的原始拷贝。
6 简写: svn st

7、删除文件

1 svn delete path -m “delete test fle“
2 例如: svn delete svn://192.168.1.1/pro/domain/test.php -m “delete test file”
3 或者直接svn delete test.php 然后再svn ci -m ‘delete test file‘,推荐使用这种4 简写: svn (del, remove, rm)

8、查看日志

1 svn log path
2 例如: svn log test.php 显示这个文件的所有修改记录,及其版本号的变化

9、查看文件详细信息

1 svn info path
2 例如: svn info test.php

10、比较差异

1 svn diff path(将修改的文件与基础版本比较)
2 例如: svn diff test.php
3 svn diff -r m:n path(对版本m和版本n比较差异)
4 例如: svn diff -r 200:201 test.php5 简写: svn di

11、将两个版本之间的差异合并到当前文件

1 svn merge -r m:n path
2 例如: svn merge -r 200:205 test.php(将版本200与205之间的差异合并到当前文件,但是一般都会产生冲突,需要处理一下)
 

12、SVN 帮助

1 svn help2 svn help ci

13、版本库下的文件和目录列表

1 svn list path2 显示path目录下的所有属于版本库的文件和目录3 简写:svn ls

14、创建纳入版本控制下的新目录

1 svn mkdir: 创建纳入版本控制下的新目录。
2 用法: 1、mkdir PATH…2、mkdir URL…创建版本控制的目录。
1、每一个以工作副本 PATH 指定的目录,都会创建在本地端,并且加入新增调度,以待下一次的提交。
2、每个以URL指定的目录,都会透过立即提交于仓库中创建。在这两个情况下,所有的中间目录都必须事先存在

15、恢复本地修改

1 svn revert: 恢复原始未改变的工作副本文件 (恢复大部份的本地修改)。revert:

2 用法: revert PATH…3 注意: 本子命令不会存取网络,并且会解除冲突的状况。但是它不会恢复4 被删除的目录

16、代码库URL变更

1 svn switch (sw): 更新工作副本至不同的URL。 
2 用法:
1、switch URL [PATH]
2、switch –relocate FROM TO [PATH...]
 
3 更新你的工作副本,映射到一个新的URL,其行为跟“svn update”很像,也会将服务器上文件与本地文件合并。这是将工作副本对应到同一仓库中某个分支或者标记的方法。
4 改写工作副本的URL元数据,以反映单纯的URL上的改变。当仓库的根URL变动(比如方案名或是主机名称变动),但是工作副本仍旧对映到同一仓库的同一目录时使用这个命令更新工作副本与仓库的对应关系

17、解决冲突

1 svn resolved: 移除工作副本的目录或文件的“冲突”状态。
2 用法: resolved PATH…
3 注意: 本子命令不会依语法来解决冲突或是移除冲突标记;它只是移除冲突的相关文件,然后让 PATH 可以再次提交。
 


Mac 终端下svn常用命令的使用的更多相关文章

  1. mac终端下svn常用命令

    svn基本的操作流程就是: 你刚刚进入一个新的公司,让你接手一个正在进行的项目,你打开终端写下了:svn co svn://192.168.1.1/pro/domain 然后就可以在当前目录里面找到一 ...

  2. linux命令行下svn常用命令

    linux命令行下svn常用命令 1. 将文件checkout到本地目录 1 #path是服务器上的目录 2 svn checkout path 3 4 #示例 5 svn checkout svn: ...

  3. linux下svn常用命令

    (如果是第一次提交文件,很可能会出现“svn:'.'不是工作副本”,即当前目录不是工作副本,这个时候需要用到import: eg:svn import . url) 1.将文件checkout到本地目 ...

  4. mac系统下的常用命令

    这是我日常在mac下记录的一些常用终端命令: 1 java 2 javac 3 exit 4 /Users/lianxumac/Desktop/apktool1.5.2/反编译 ; exit; 5 / ...

  5. mac终端下运行shell脚本

    最近公司要弄关于IOS下自动化打包的东西,研究了用命令行的形式来代替手工的方式来处理.即: 用xcodebuild 和xcrun  语法来进行脚本实现.    但由于语法的结构够了,另一个问题产生了, ...

  6. 终端下将 man 命令的结果输出到文件保存

    终端下将 man 命令的结果输出到文件保存 在linux或mac下,当我们使用man命令查看某一个命令的详细帮助说明信息时: 可能终端的显示效果不是那么方便: 那么我们可以将man命令的结果输出到tx ...

  7. 转载-SVN常用命令

    SVN(Subversion)是一个自由.开源的项目源代码版本控制工具.目前,绝大多数开源软件和企业代码管理,都使用SVN作为代码版本管理软件. Subversion将文件存放在中心版本库里,这个版本 ...

  8. (转载)Mac系统下利用ADB命令连接android手机并进行文件操作

    Mac系统下利用ADB命令连接android手机并进行文件操作 标签: Mac adb android 2016-03-14 10:09 5470人阅读 评论(1) 收藏 举报  分类: Androi ...

  9. Mac 环境下svn服务器的配置

    Mac 环境下svn服务器的配置 本文目录 • 一.创建代码仓库,用来存储客户端所上传的代码 • 二.配置svn的用户权限 • 三.使用svn客户端功能 在Windows环境中,我们一般使用Torto ...

  10. linux 下 mysql 常用命令

    linux 下 mysql 常用命令   阅读目录 ====================== 1.开启和关闭 1.1.开启 1.2.关闭 1.3.重启 2.登录 2.1.密码明文 2.2.密码密文 ...

随机推荐

  1. 补充:基于项目的协同过滤推荐算法(Item-Based Collaborative Filtering Recommendation Algorithms)

    前言 继续上篇博客,继续读论文. 想看上篇论文的同学可以点击这里 相关工作 In this section we briefly present some of the research litera ...

  2. Qt解析JSON

    Qt解析JSON 文章目录 Qt解析JSON QT 解析json的三件套,QJsonDocument.QJsonObject.QJsonArray.QJsonValue JSON主要格式 QT的JSO ...

  3. vmware vsphere 6.5

    vmware vsphere 6.5是vsphere软件的经典版本,也是一款业界领先的服务器虚拟化平台,作为基础平台,是任何云计算环境的理想之选,其组件包括vCenter Server.ESXi.vS ...

  4. Wyn商业智能V8.0 Update1版本发布

    智启未来,Wyn商业智能V8.0 Update1版本深度融合AI技术.工业物联网与数据工程能力,带来三大核心亮点及100+新特性,致力于为企业打造全场景智能分析平台,助力构建从数据加工到智能决策的全链 ...

  5. [源码系列:手写spring] IOC第十三节:Bean作用域,增加prototype的支持

    为了帮助大家更深入的理解bean的作用域,特意将BeanDefinition的双例支持留到本章节中,创建Bean,相关Reader读取等逻辑都有所改动. 内容介绍 在Spring中,Bean的作用域( ...

  6. [每日算法 - 华为机试] leetcode172. 阶乘后的零

    入口 力扣https://leetcode.cn/problems/factorial-trailing-zeroes/ 题目描述 给定一个整数 n ,返回 n! 结果中尾随零的数量. 提示 n! = ...

  7. Mybatis三大执行器

    目录 1.执行器介绍 执行器的选择入口 设置执行器两种方式 全局配置(不建议) 局部设置(建议) 2.三个执行器区别 SimpleExecutor ReuseExecutor BatchExecuto ...

  8. 如何使用Git命令将代码上传到GitHub

    1. 首先在我们的计算机上创建文件夹:例如取名:test 2. 进入test文件夹后点击鼠标右键,选择打开Git Bash. 3. 将我们创建的文件夹初始化为Git仓库:git init 4. 将要上 ...

  9. 🎀腾讯云nodejs SDK打包体积过大吐槽事件

    简介 2025年2月1日有位开发同学batchor在GitHub上提出了issue(你们是把***打包了吗?)对腾讯云Node.js的SDK打包体积过大进行吐槽(言语偏贴吧风格略显激进),SDK打包体 ...

  10. Launchpool名词解释

    # 一.什么是Launchpool Launchpool是一种加密货币领域的创新机制,通常由交易所或DeFi平台提供,允许用户通过质押(staking)或锁定特定代币来获得新项目的代币奖励. ## L ...