导读

Apache Subversion 通常被缩写成 SVN,是一个开放源代码的版本控制系统,Subversion 在 2000 年由 CollabNet Inc 开发,现在发展成为 Apache 软件基金会的一个项目,同样是一个丰富的开发者和用户社区的一部分。

SVN相对于的RCS、CVS,采用了分支管理系统,它的设计目标就是取代CVS。互联网上免费的版本控制服务多基于Subversion。

Branch 选项会给开发者创建出另外一条线路。当有人希望开发进程分开成两条不同的线路时,这个选项会非常有用。

比如项目 demo 下有两个小组,svn 下有一个 trunk 版。

由于客户需求突然变化,导致项目需要做较大改动,此时项目组决定由小组 1 继续完成原来正进行到一半的工作(某个模块),小组 2 进行新需求的开发。

那么此时,我们就可以为小组2建立一个分支,分支其实就是 trunk 版(主干线)的一个copy版,不过分支也是具有版本控制功能的,而且是和主干线相互独立的,当然,到最后我们可以通过(合并)功能,将分支合并到 trunk 上来,从而最后合并为一个项目。

我们在本地副本中创建一个 my_branch 分支。

root@runoob:~/svn/runoob01# ls

branches tags trunk

root@runoob:~/svn/runoob01# svn copy trunk/ branches/my_branch

A branches/my_branch

root@runoob:~/svn/runoob01#

查看状态:

root@runoob:~/svn/runoob01# svn status

A + branches/my_branch

A + branches/my_branch/HelloWorld.html

A + branches/my_branch/readme

提交新增的分支到版本库。

root@runoob:~/svn/runoob01# svn commit -m "add my_branch"

Adding branches/my_branch

Replacing branches/my_branch/HelloWorld.html

Adding branches/my_branch/readme

Committed revision 9.

接着我们就到 my_branch 分支进行开发,切换到分支路径并创建 index.html 文件。

root@runoob:~/svn/runoob01# cd branches/my_branch/

root@runoob:~/svn/runoob01/branches/my_branch# ls

HelloWorld.html index.html readme

将 index.html 加入版本控制,并提交到版本库中。

root@runoob:~/svn/runoob01/branches/my_branch# svn status

? index.html

root@runoob:~/svn/runoob01/branches/my_branch# svn add index.html

A index.html

root@runoob:~/svn/runoob01/branches/my_branch# svn commit -m "add index.html"

Adding index.html

Transmitting file data .

Committed revision 10.

切换到 trunk,执行 svn update,然后将 my_branch 分支合并到 trunk 中。

root@runoob:~/svn/runoob01/trunk# svn merge ../branches/my_branch/

--- Merging r10 into '.':

A index.html

--- Recording mergeinfo for merge of r10 into '.':

G .

此时查看目录,可以看到 trunk 中已经多了 my_branch 分支创建的 index.html 文件。

root@runoob:~/svn/runoob01/trunk# ll

total 16

drwxr-xr-x 2 root root 4096 Nov 7 03:52 ./

drwxr-xr-x 6 root root 4096 Jul 21 19:19 ../

-rw-r--r-- 1 root root 36 Nov 7 02:23 HelloWorld.html

-rw-r--r-- 1 root root 0 Nov 7 03:52 index.html

-rw-r--r-- 1 root root 22 Nov 7 03:06 readme

将合并好的 trunk 提交到版本库中。

root@runoob:~/svn/runoob01/trunk# svn commit -m "add index.html"

Adding index.html

Transmitting file data .

Committed revision 11.

linux svn切换分支,玩转SVN-分支相关推荐

  1. idea svn切换分支像eclipse一样主干覆盖分支代码(亲测有效)

    1.//在idea中svn切换到新分支:[vcs] -> [subversion] -> [update file]. 修改其中的svn路径即可 类似eclipse中team->sw ...

  2. eclipse svn主干修改代码同步到分支

    从主干合并到分支 注意:svn合并针对的是目的文件,比如 从主干合并到分支 意思是:在分支上操作(拉取主干上的代码) 反之 从分支合并到主干 意思是 在主干上操作(从分支上拉取代码).这样理解的话 就 ...

  3. 从零开始SVN(2)--Eclipse、Subclipse、分支开发

    文章目录 Eclipse使用 SVN 插件 插件的选择.安装 Subclipse 的安装 常规的操作 分享工程(添加) 图标含义 检出 解决冲突 分支开发 概念与作用 创建分支 切换分支 合并分支 分 ...

  4. Git命令 分支 Tag 配置 SVN迁移

    目录 一.git 代码管理 二.git 分支管理 三.git Tag管理 四.git 日志查看 五.配置Git仓库 六.从SVN迁出到本地Git仓库(还没有配置Git仓库的,直接看第八条) 七.在远程 ...

  5. svn 命令行创建和删除 分支和tags

    创建分支 svn cp -m "create branch" http://svn_server/xxx_repository/trunk http://svn_server/xx ...

  6. svn拉取文件合并_SVN分支与合并【超详细的图文教程】(转载)

    SVN分支与合并 一.分支与合并的概念 二.SVN分支的意义 三.如何创建分支与合并分支 一.分支与合并的概念: 分支:版本控制系统的一个特性是能够把各种修改分离出来放在开发品的一个分割线上.这条线被 ...

  7. 玩转GIT系列之【git的分支操作(查看分支/切换分支/新建分支/删除分支)】

    一.查看分支 1.查看全部分支 git branch -a 2.查看本地分支 git branch -l 3.查看远程分支 git branch -r 二.切换分支 假设本地当前处于master分支下 ...

  8. 【转】玩转git分支

    玩转git分支 https://www.cnblogs.com/sunshine-anycall/p/4342520.html 搞个代码的管理工具,居然不弄上分支啥的东西.这简直太low了.尤其是在使 ...

  9. linux 在本地创建svn服务器_linux下搭建svn服务器及创建项目

    一. 使用yum 安装SVN包 关于YUM 服务器的配置参考: Linux 搭建 YUM 服务器 http://blog.csdn.net/tianlesoftware/archive/2011/01 ...

  10. windows和linux对齐svn客户端版本共享使用svn工作目录

    可能有不少人的开发软件方式,是在windows上做代码开发,而在linux做版本编译.那么,通过linux samba服务共享代码目录给windows,在windows开发代码后,直接在linux命令 ...

最新文章

  1. vb中的webrowser无法进行滑块验证_专题63 验证动量守恒定律
  2. MariaDB AX开源分析解决方案
  3. hibernate(七) hibernate中查询方式详解
  4. 进阶学习(2) jenkins 使用
  5. 真执着 卡巴斯基和Palo Alto找到了BlackEnergy和ExPetr的相似代码
  6. 四十五、Gtihub+Hexo+icarus搭建自己的博客
  7. POJ 2251 Dungeon Master(三维BFS求最短路径)
  8. Testng生成的测试报告乱码解决办法
  9. Win32路径操作相关API
  10. vue图片压缩不失真_图片压缩会失真?快试试这几个无损压缩神器。
  11. 【Modern OpenGL】第一个三角形
  12. 基于OHCI的USB主机 —— UFI命令概述
  13. 如何评价@左耳朵耗子 的《关于阿里云经典网络的问题》?
  14. SI4463研究计划(兼STM32F0进一步加深理解)
  15. “谷歌浏览器无法从该网站添加应用、拓展程序和用户脚本”问题解决
  16. TF卡,Micro SD卡,Micro SDHC卡
  17. python中三元运算符_Python中三元表达式的几种写法介绍
  18. 喜讯!清华大学镜像站恢复anaconda加速
  19. 【转载】通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core?
  20. 使用scrapy爬取北京公交

热门文章

  1. 微信浏览器实现自动下载功能
  2. 4900款网红pr调色lr预设ps滤镜达芬奇lut电影视频素材
  3. 天翼网关安装php,AC双频光猫拆机:天翼网关2.0-HS8145v和移动智能光猫HS8546v
  4. threejs 快速入门小技巧
  5. 使用阿里云加速器 配置 Docker 镜像加速器
  6. gmssl java_GMSSL编译运行Java Wrapper踩坑记录
  7. 6G总体愿景与潜在关键技术白皮书【PPT】
  8. Clover_v2.3k版本合集 四叶草EFI文件、Pkg安装包
  9. 电子沙盘技术和android,ERP沙盘与电子沙盘的区别
  10. vue前端跨域解决方案