zoukankan      html  css  js  c++  java
  • SVN有用教程

    好用的Windows下SVNclient——Tortoise SVN的下载地址:

    http://tortoisesvn.tigris.org/

    文档:

    http://www.subversion.org.cn/svnbook/
    http://www.subversion.org.cn/tsvndoc/

    SVN 与 VSS 的差别:

    VSS中,编辑一个文件,有一个锁定的概念,这样能够确保改动一个文件时别人无法改动这个文件

    SVN和它思路不同,SVN中觉得,项目中的參与人员,一般来说,分工明白的情况下编辑并不会冲突,所以并不特别重视锁定这个概念(可是SVN全然支持相似于VSS的锁定,独占一个文件的编辑)

    即使编辑了一个文件,仅仅要不是同一行,SVN还拥有很智能的方式将它们合并进成为一个新的文件

    仅仅有在编辑了同一个文件的同样位置,SVN才会把文件标记为冲突,从而交给用户进行处理

    TortoiseSVN(以后简称TSVN)使用:

    全部操作,大部分操作在右键菜单的TSVN中,

    后文中提及的大部分操作,

    都是右键菜单操作。

    正文

    之中的一个:建立SVN项目仓库

    你也能够在自己的计算机建立SVN的仓库

    方法是:

    新建一个目录,比方d:svnmyproject

    进入这个目录,右键->TSVN->Create repository here...

    然后在你的项目目录(比方e:javamyproject1)里面导入项目:

    进入e:javamyproject1,然后右键,TSVN->Import

    输入:file://d:/svn/myproject/trunk

    导入即可了

    SVN支持http://, svn://, file://等多种协议

    它本身(非TSVN,TSVN不过client)能够作为server执行,也能够作为apache的模块执行

    以后你在e:javamyproject1以下的提交之类的操作将会被记录在d:svnmyproject这个仓库里面

    之二:下载项目仓库文件到工作文件夹:

    如今,新建一个空目录

    使用刚建好的SVN项目仓库地址(比方:file://d:/svn/myproject/trunk

    右键空白处

    选择SVN Checkout(检出)

    之三:提交改动的文件

    右键->SVN Commit

    会出现一个提交窗体,Message里面写入关于这次提交的一个概要

    这里我们进行一个约定

    假设这次的提交以改动为主,那么Message前面加上@MOD,比方:

    "@MOD 对README.txt进行了改动,增加了项目描写叙述"

    诸如此类

    假设这次提交以加入新文件为主

    那么@ADD,比如:

    "@ADD 增加style.css样式表"

    这是test项目,你能够任意编辑,任意提交,任意删除

    可是不要删除不论什么的隐藏的.svn目录以下的内容,这个是SVN的信息

    重命名是,右键文件->TSVN->Rename

    删除是,右键文件->TSVN->Delete

    凝视:

    1. 锁定:锁定一般针对二进制文件编辑时採用,比方jpg, gif, doc之类的非纯文本文件
    2. 版本:SVN中,不论什么提交,不管改动有多么微小,都会让修订版本添加1
    3. ShowLog:右键空白处->TSVN->Show Log能够查看以往的提交记录;右键文件->TSVN->ShowLog能够查看与这个文件相关的提交记录

    之四:恢复到曾经的版本号

    SVN中的每一个修订版的不论什么文件都能够被获取到,所以仅仅要是提交过的文件,不用操心其改动的问题,即使改错了,也能够恢复到以往的随意一个版本号

    详细操作是右键文件(或空白处——针对当前目录)->TSVN->Update to revision

    之五:编辑冲突

    如今来演示一下冲突问题:

    你把test.txt的asdf所有换成别的文字

    但不要提交

    我也来改动相同的地方,然后提交后,你再尝试提交

    【以上是大哥教我的时候的聊天记录,能够选择的做法是:在两个目录下check out同一个项目仓库,然后在两个目录下同一时候改动,能够有相同的效果】

    SVN会提示出错,然后阻止你的提交

    你这时候右键->SVN Update

    SVN会将server上的版本号,以及你自己的版本号都分别放一个文件,选择test.txt右键->TSVN->Edit conflict

    是一个典型的diff程序,你能够在左右两側分别比較

    "Mine"和"Theirs"的版本号的差别,然后右键冲突的地方,选择要哪个地方的版本号

    最后保存后,再度提交成为一个新的修订版【依据小子的实践,直接点击 mark as resolved就包含:save 和 commit,所以慎用此键】

    之中的一个:提交的原则

    关于提交,有一些基本原则,提交上去的代码

    1. 不影响到其他开发人员开发的部分的功能

    2. 能够执行,有程序bug没有关系,可是不要有错误(语法错误之类的)

    在上面这个原则上,尽可能的多提交(当然也不用写两三行就提交一次,这个度要把握好),方便团队中的成员都拥有最新的版本号

    之二:公布终于的版本号

    终于公布的版本号(术语叫生产环境版本号),里面不须要.svn的数据,你仅仅须要在项目目录里面,右键,然后TSVN->Export导出,或者右键拖拽你的项目目录,有Export here的选项

  • 相关阅读:
    go 基本包
    go 包
    算法笔记--数据结构--链表
    算法笔记--数据结构--队列
    算法笔记--标准模板库STL--pair
    算法笔记--标准模板库STL--stack
    算法笔记--标准模板库STL--priority_queue
    算法笔记--标准模板库STL--queue
    初识pair
    lower_bound实现离散化
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4509773.html
Copyright © 2011-2022 走看看