zoukankan      html  css  js  c++  java
  • SVN学习——简单入门之创建仓库、导入、检出(一)

      从刚刚参加工作就开始使用svn,清晰的记得那年师姐比较生气的来找我:“你怎么又不更新就提交代码了,把我写的都给覆盖掉了”,哈哈~

      虽然一直在用svn,不过在日常工作中主要用到的是简单的操作,而且大多数是基于eclipse插件、客户端小乌龟直接操作的。对于svn的理解还是比较单一的。当然目前除了集中式版本管理工具svn之外,比较火的还有分布式的版本管理工具git。

      下面借着学习svnkit的机会,把svn也学习一遍,加深了解~

      官网简单介绍:

        官网:http://subversion.apache.org/

        所属机构:Apache开源组织。

        特性:集中式版本管理工具。

        开发:svn本身是使用c语言开发的。

        版本:目前最高的是1.9版本,1.10版本还在开发中,在即将到来的2017年可能会发布。

        版本支持:官方对于1.7和更老的版本不予以支持,1.8版本予以部分支持,1.9版本予以完全支持。

        相关性:客户端工具TortoiseSVN、IDE插件(Eclipse、Netbeans、IntelliJ IDEA等)、java实现svnkit

      接下来我们照着官方的例子做一个简单的入门:1.创建仓库  2.将工程交由版本库控制  3.重新检出工程

      官网示例链接:http://svnbook.red-bean.com/nightly/en/svn.intro.quickstart.html

      准备工作:下载一个VisualSVN Server(和Subversion一样是一个服务端管理的软件),这里我随便在百度下了一个:VisualSVN Server 3.5.6

      已知信息:①.VisualSVN Server安装目录:E:VisualSVNRepositories,使用VisualSVN新建或从其他目录导入repository,均会在此目录下创建repository。

           ②.工程目录(projectA):E:SVNworkProejctsprojectA

      需求:假定我们有一个工程:projectA,现在想使用我们刚刚建立的仓库来管理projectA。

      SVN官方比较期望我们工程的目录结构如下,当然我们也可以不按照这个目录结构来:

      project - branches

             - tags

             - trunk - 项目文件A

                 - 项目文件B

      对于这三个目录,官方没有给出明确的用法,大家可以根据习惯使用,如:

      trunk:开发主目录,主线。

      branches:分支开发目录。

      tags:只读打包目录。

      好了扯远了,回归主题~我们姑且按照官方的标准来。

      使用svn命令行操作:

      1.在VisualSVN Server目录下创建一个仓库:svnadmin create E:SVNsvnRepositoriesmyRepository

      执行后,cd进去ls一下,如下图:

      

      使用VisualSVN Server查看此仓库URL(SVN Repository URL):https://wangdaye-PC/svn/myRepository/

      2.将工程交由版本库控制:svn import 项目目录 SVN Repository URL -m "提交日志信息"

      svn import E:SVNworkProejctsprojectA https://wangdaye-PC/svn/myRepository/ -m "initial import"

      我们可能会遇到没有权限的问题:

      

      没关系,使用VisualSVN Server添加一个用户,并为此仓库添加用户的访问权限即可:

      

      权限操作成功后,再次执行命令,操作成功:

      

      至此,我们发现本地磁盘中的projectA实际并未收到仓库的版本控制!因为我们在projectA的目录下并未看到.svn的隐藏文件。怎么办呢?

      3.检出工程:svn checkout SVN仓库URL 任意本地磁盘工作目录

      svn checkout https://wangdaye-PC/svn/myRepository/trunk E:SVNsvnWorkSpaceprojectA

      

      至此,我们执行成功了,查看磁盘目录,受到版本控制了,我们第二步导入的projectA可以删掉了。

      

      OK,大功告成~

       

      

  • 相关阅读:
    java,jsp+mysql5.6搭建环境
    数据结构:栈的顺序存储结构
    开源 免费 java CMS FreeCMS1.2标签 config
    在Ubuntu中安装HP LaserJet 1020驱动
    iPad及BT4下的WEP破解实验与分析 | Network Security
    WEP&WPA Cracking on BT5/MAC [转]
    关于显示屏分辨率的问题
    Laravel5.1 路由 路由分组
    版本号/缓存刷新 laravel mix函数
    Laravel 中config的用法
  • 原文地址:https://www.cnblogs.com/douJiangYouTiao888/p/6116121.html
Copyright © 2011-2022 走看看