精华内容
参与话题
问答
  • 代码版本管理的利器

    万次阅读 2018-02-28 23:09:33
    说起版本管理工具开发的同胞们不会陌生,小编在工作中用过SVN,TFS,Git;从使用者的角度来说:个人感觉Git是最好用的。 【我眼中的git】 一、来源: 说起Git不得不提它的开发者Linus(Linux的开发者),一个神...

     

    【前言】

               说起版本管理工具开发的同胞们不会陌生,小编在工作中用过SVN,TFS,Git;从使用者的角度来说:个人感觉Git是最好用的。

    【我眼中的git】

            一、来源:

                   说起Git不得不提它的开发者Linus(Linux的开发者),一个神一般的人物,致力于开源,为了管理Linux源码自己开发了Git(Git官网)。 

            二、Git的优势:

                  1.分布式:和SVN和TFS的十分重要的区别在于,它的所有代码不仅仅是在中央仓库中,每个客户端都有完整的一份,这样当中央仓库over了,大家仍然可以从其他伙伴那里clone代码继续开发;

                  2.速度快:建分支,版本回滚,合并分支上传下载.....都快的不像实力派;

                  3.有众多的开源网站使用git,比如大家熟知的github,还有国内的码云;

            三、我接下来的关于git的写作计划:

                  1、接下来的几篇会写关于git使用的常见技巧以及命令;

                  2、自己揣摩git的设计思想,以及在自己项目中的相关应用。 

                       

    【总结】

               一款好的软件我们不仅仅要熟练的使用它,更重要的是体会其中的设计思想,以此来指导自己的项目开发乃至人生。

    展开全文
  • maven项目版本管理

    千次阅读 2019-03-05 12:54:12
    当前项目有许多模块并且存在父子关系,如下: <parent> <groupId>com.boot</groupId> <artifactId>boot-facede</artifactId&...gt...

    当前项目有许多模块并且存在父子关系,如下:

        <parent>
            <groupId>com.boot</groupId>
            <artifactId>boot-facede</artifactId>
            <version>1.0.0-SNAPSHOT</version>
        </parent>
        <artifactId>boot-facede-flat</artifactId>
        <packaging>jar</packaging>


    执行以下命令,升级父项目以及所有子项目的版本:

    mvn versions:set -DnewVersion=2.0.0-SNAPSHOT


    得到以下结果

      <parent>
            <groupId>com.boot</groupId>
            <artifactId>boot-facede</artifactId>
            <version>2.0.0-SNAPSHOT</version>
        </parent>
        <artifactId>boot-facede-flat</artifactId>
        <packaging>jar</packaging>

    如果想回退:

    mvn versions:revert

    revert  rely on the 

    pom.xml.versionsBackup


    接下来修改所有被依赖的版本:

    mvn versions:update-child-modules

    或者

    mvn ‐N versions:update‐child‐modules

    确认变更 

    mvn versions:commit

     查看更新组件

    mvn versions:display-plugin-updates


    当项目开发到一定阶段要切换为正式版本时,则执行以下命令:

    mvn release:prepare

     

     <parent>
            <groupId>com.boot</groupId>
            <artifactId>boot-facede</artifactId>
            <version>2.0.0-RELEASE</version>
        </parent>
        <artifactId>boot-facede-flat</artifactId>
        <packaging>jar</packaging>


    要发布正式版本时则执行以下命令:

    mvn release:perform


    更多详细官方文档:http://www.mojohaus.org/versions-maven-plugin/usage.html

    http://www.mojohaus.org/versions-maven-plugin/examples/set.html

    展开全文
  • Git版本管理工具使用详细介绍

    万次阅读 2019-05-16 17:17:51
    一、引言 跟你们吐槽一下,最近小编的工作制度也改成996,怎么说? 是好是坏呢? 网上很多小伙伴也在吐槽,刚开始小编也是挺反感的,毕竟之前周末一些坚持的习惯,因此都需要改变。 既然公司选择了996,我们也就...

    一、引言

    跟你们吐槽一下,最近小编的工作制度也改成996,怎么说? 是好是坏呢?

    网上很多小伙伴也在吐槽,刚开始小编也是挺反感的,毕竟之前周末一些坚持的习惯,因此都需要改变。

    既然公司选择了996,我们也就不必抱怨什么了,要么选择离职、要么选择接受。

    对于小编来说有好有坏,好的是:有更多的时间来学习之前没时间学习的内容

    好了,多说无益,本章介绍使用Git整个基本使用流程。

     

    二、为什么要使用版本管理工具

    备份文件我们在日常开发中,代码备份必不可少。可以采用移动硬盘、网盘的形式来备份,但是以这种形式也有很多弊端。我们程序员一天的工作量都写在几个文件里面,如果说因为一些未知因素导致丢失了,这种情况损失还是挺大的。

    历史记录:即使我们上面所说,通过硬盘、网盘来备份,也只能保存当前最新的文件。而版本工具可以备份每一次所提交的代码,以及可以记录详细的修改信息,比如说某一行代码是谁在什么时候进行提交的。

    版本回退:当我们在开发过程中,也难免一些刚刚入职的同事不小心对代码所造成的伤害难以弥补的时候,这个时候我们也可以通版本管理工具,将当前的代码回退到之前提交的某个版本。

    多端共享:提供进行团队合作使用,总不能同事A写了一个方法,同事B需要用到这个方法,总不能让同事A拿着硬盘拷贝过去吧,所以采用管理工具只需将代码提交即可。 

    三、管理版本工具发展史

    CVS:年轻一代的程序员绝大都不会知道CVS这个玩意,这个CVS是由一位教授开发的,可以说它是版本管理的始祖。具体听说是当时一位教授带着几名学生开发,在代码合并、备份方面上特别不人性化,所以开发了这么一套东西。CVS是集中式的,我们更新、上传文件都是通过这个集中式的服务来完成,只需要有网络连接上这个服务即可。

    SVN:那么到了2000年,有国外的一个团队研发了SVN,更加推广发扬了版本管理工具,也包括我们现在很多公司也都在使用SVN,SVN本身也是很强大的,该有的功能应有尽有。也包括目前小编的公司也是在使用SVN,说到这里我会想到小编在学校刚刚使用svn的时候,那时候组员对SVN这些东西也都不熟悉,每次更新代码都是一堆报错,还有些把代码弄没了,都是一路踩坑过来的。

    Git:诞生于2005年,由linux之父Linus所开发的,这个也是市场上比较主流的版本管理。在Git之前Linus都是采用手工的方式来维护代码,因为他比较反感SVN需要连接网络才能进行工作。而Git与Svn最大的区别在于,Git是分布式、Svn是集中式。

    集中式:有一台中心服务器,需要连接网络才能进行更新上传的操作。

    分布式:只需要拥有一个自己的版本库,无需连接网络都能进行工作,提高了工作效率。

    GitHub:这个有人理解为就是Git,但其实是程序员社区网站,可以托管自己个人的一个软件库,只是GitHub是基于Git来实现的。

    四、Linux下安装Git环境

    Linux环境下安装Git只需要输入 “yum install git” ,安装完成后输入"git --help",如果能看到对应的提示即可。

    五、Linux环境下克隆项目到本地

    一般我们项目是托管在码云、GitHub上,在克隆之前需要选择其一注册账号,并且创建项目才能进行克隆。

    以GitHub为例,新建项目并且手动新增一个文件,方便我们有文件克隆到本地来。

    针对我们刚刚所创建的项目,在linux环境下使用git命令把项目下载到本地来。

    复制如上图地址,使用“git clone”命令进行克隆,可以查看到README文件。

    六、Linux环境下提交代码到远程仓库

    步骤一:在刚刚克隆的文件下,新建一个文件并且写入内容:“vim movie” ,vim 是linux下文本编辑器,movie 是文件名。

    步骤二:把刚刚新增的文件建立追踪,使用命令:“git add movie

    步骤三:使用“git status” 查看工作区的状态,可以看到如下信息:

    步骤四:设置自己的邮箱和密码 “git config --global user.email "xxx.com" ”、“git config --global user.name "xxx"

    步骤五:使用“get commit”来提交到本地仓库,提交之后会提示你输入本次提交备注,方便以后快速找到提交版本。

    步骤六:提交到GitHub,使用 “git push” 最后提交到远程仓库中去,在提交过程中会要求输入登录的用户名和密码。最后能在GitHub中看到提交的文件即可。

    七、Linux环境下解决代码冲突

    代码冲突怎么来的呢?

    就是有同时多个人,对同一个文件进行了操作。现在小编换了另外一个客户端,对movie文件进行了修改,并且提交了远程仓库。

    修改内容如下:

    但是最初那个客户端可不知道有人改动并且提交了文件,然后小编在拿第一个客户端改动文件并提交,看看会提示什么。

    在改动之后并且推送给远程仓库,然后就直接被拒绝了。我们需要使用"git pull"先来更新远程仓库的代码,并且解决掉冲突才能提交。 在使用pull这个命令之后,在看查看movie文件内容:

    在我们解决完冲突之后,在使用push提交即可,可以看到远程仓库也一起改了。

    八、Linux环境下版本回退

    步骤一:首先我们来确认下,我们本地最新的文件内容是什么样子的。

    步骤二:使用"git log"命令查看提交的日志,现在我们需要会回退到之前在另外一个客户端所提交到内容。

    步骤三:使用"git reset --hard 版本号",版本号就是上图所画的,则可以回退到指定版本。

    九、总结

    本章也只是对git做了一些基本的介绍,以及对git有一个基本的操作概念。

    其实这篇文章很早之前就开始写了,一直没空写完,今天逼了下自己抽空写完啦哈哈哈哈。

    对了,还有小编996的工作制度维持了半个月就取消了~~~

    展开全文
  • 版本管理工具之ClearCase

    千次阅读 2018-04-18 15:56:52
    Rational ClearCase是软件配置管理SCM工具的一种,它可以用来对代码或者其他软件开发资产进行版本控制。对于超过上百或者上千团队开发者的大型项目据说也有很好的支持,同时对于大的二进制文件,文件个数很多,整体...

    这里写图片描述
    Rational ClearCase是软件配置管理SCM工具的一种,它可以用来对代码或者其他软件开发资产进行版本控制。对于超过上百或者上千团队开发者的大型项目据说也有很好的支持,同时对于大的二进制文件,文件个数很多,整体仓库容量很大的情况也能进行支持,另外对于目录也能进行版本的控制。

    前世今生

    时间 事件
    1992年 ClearCase在Atria Software公司诞生支持Unix,后来也开始支持Windows
    2003年 2003年,IBM买下了Rational Software,因为之前Atria Software合并到PureAtria之后被Rational Software收购,从2003年之后,CC改姓IBM
    2017年12月18 Rational ClearCase目前最新的版本为9.0.1.2

    基本信息

    项目 详细信息
    支持平台 AIX, HP-UX, Linux, Linux on z Systems, Solaris, Windows, z/OS
    License IBM EULA
    类型 中心化的版本管理工具
    Know How https://www.ibm.com/support/knowledgecenter/SSSH27_9.0.1/com.ibm.rational.clearcase.help.ic.doc/helpindex_clearcase.htm

    术语

    学习ClearCase可能要学习一下它的一些术语,比如ClearCase支持两种模型:
    UCM(Unified Change Management)和Base ClearCase两种模型。你可能需要从创建一个VOB开始,VOB:versioned object database,这个就是类似其他版本管理工具中称为仓库的东西,但是又一些微妙的差别。学习ClearCase需要从很多类似的术语开始理解它的做法。

    常用操作

    可以通过客户端操作来进行版本控制,但是也可以使用cleartool进行基本操作,比如:

    操作 命令
    创建VOB cleartool mkvob -tag vob-tag -comment comment -tcomment tag-comment -stgloc vob-stgloc-name
    更改VOB的Owner cleartool protectvob –chown
    更改VOB的Group cleartool protectvob –chgrp
    添加VOB的的Group cleartool protectvob –add_group
    删除VOB的Group cleartool protectvob –delete_group
    创建视图 cleartool mkview –tag
    设定视图 cleartool setview
    checkout文件 cleartool checkout -reserved -comment “Adding address” -activity “add_address” author.txt
    checkin文件 cleartool checkin -nc author.txt
    对文件加锁 cleartool lock
    对文件解锁 cleartool unlock

    持续集成

    ClearCase也提供Jenkins的插件,使用此插件可以进行对其进行操作。

    设定例:
    这里写图片描述

    移植至git或者svn的方案

    版本管理工具的移植非常简单,一般来说,长期使用的版本管理工具中非常被重视的信息是comment和提交者以及提交原因等,这些对于长期维护的项目是一笔重要的财富,建议使用以下步骤进行移植:

    步骤 详细作业内容
    Step 1 整理出需要保存的信息,包括文件列表,文件的comment和提交人等项目,哪些需要倒入到新的版本管理工具中,需要以怎样的形式
    Step 2 对整体的list进行整理,建议创建一个初始用户,将需要保留的信息以诸如”# 初期化标志 提交者 提交时间 提交原因 …”,看到# 初期化标志开头的日志就会了解这是从以前的版本管理工具中取到的历史数据
    Step 3 对整体的list进行检查和修改
    Step 4 使用对应的版本管理工具进行提交,比如使用git的化,只需要使用简单的脚本取出list中需要提交的comment,使用git commit等命令进行提交即可
    展开全文
  • 版本管理工具:Gitlab

    千次阅读 2016-08-06 18:24:47
    与集中式的版本管理工具不同, git采用分布式的版本管理方式. 由于最为广泛使用的git的仓库github只提供public的免费版本,所以更适合开源项目的管理,priavte仓库收费加之数据保留在远端的服务方式,很多企业需要...
  • SpringBoot 静态资源版本管理

    千次阅读 2017-11-23 19:39:38
    在我们做Web开发时,免不了与静态资源(css,js,images)打交道,通常的做法是在请求的URL上添加版本信息,这样可以很好的利用客户端缓存机制,只有当资源内容改变时,才需要从服务器重新请求,并加载最新版本资源。...
  • Android项目版本管理浅析

    千次阅读 2016-11-09 00:59:02
    一、重要性早年因为软件主要自己负责自己的分发、升级等方面,所以版本号也相当自由,各家都有不同的规范。但是近年来移动设备崛起,App Store这样的应用商店集中分发成了主流。以升级为例,应用商店会负责检查消费...
  • SVN版本管理工具简介

    千次阅读 2012-08-29 08:57:51
     SVN(subversion)是近年来崛起的版本管理工具,是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。  集中式代码管理的核心是服务器,所有开发者在开始新一天的工作之前必须从服务器获取...
  • 软件版本管理

    千次阅读 2019-01-09 18:02:36
    1.PC端产品内部版本管理说明 为了规范产品管理,提高产品质量,特制定产品版本规则。产品从版本上分为主版本和分支版本,从稳定程度上分为每日构建、内部测试版(alpha测试)、Beta测试版、稳定版。 所有的版本...
  • Git 版本管理工具(一)

    万次阅读 多人点赞 2012-05-02 14:08:11
    Git 是一个分布式版本控制工具,它的作者 Linus Torvalds 是这样给我们介绍 Git —— The stupid content tracker(傻瓜式的内容跟踪器)1、 Git 背景Git 最初由Linus Torvalds编写,用于 Linux 内核开发的版本...
  • 【项目管理工具】SVN 项目版本管理工具

    万次阅读 多人点赞 2018-08-02 18:05:40
    1. svn介绍 1.1 项目管理中的版本控制问题 解决代码冲突困难 容易引发bug 难于恢复至以前正确版本 无法进行权限控制 项目版本发布困难 1.2 什么是版本控制 ...SVN是版本管理工具,在当前的开源项目里(J2...
  • DevOps实战:版本管理实践指南

    万次阅读 2018-09-01 14:39:15
    版本管理是DevOps实践中非常重要的一环,本系列教程以svn和git为中心,结合分支管理模型,介绍版本管理如何与工具结合,如何进行项目实践。本目录持续更新。
  • ruby版本管理

    千次阅读 2019-01-08 14:38:28
    rvm 管理 ruby版本 安装rvm,rvm是可以让你拥有很多ruby版本的一个工具,具体的可以去了解一下(以下各个步骤均在terminal中实现)  $ curl -L https://get.rvm.io | bash -s stable 期间可能会问你sudo管理员...
  • 项目版本管理

    千次阅读 2019-03-02 20:59:04
    内部的版本管理可以帮助研发、测试、产品、工程等各部门对产品执行严格的定义,避免出现因版本不一致而造成沟通问题和项目延迟。 版本管理 版本号分为四部分:主版本号.子版本号.修正版本号-SNAPSHOT 主版本号 当...
  • 版本管理规范

    千次阅读 2010-05-18 16:26:00
    3 职责3.1测试管理 确保项目版本按照正确的版本管理规范执行和使用。3.2 配置管理员 负责定期检查各项目对版本管理规范的执行度;根据发展需要对规范进行完善。3.3 配置管理员负责项目软件产品版本管理规范的
  • Golang 多版本管理神器 gvm

    千次阅读 2020-03-01 11:46:44
    缘起 最近编译 kubernetes 遇到了点坑,编译各种报错,经搜索调研...为了解决这种尴尬的场景只能再在主机安装个 go1.12.xx 版本,那么有没有什么优雅的方式来实现本机多版本 Golang 版本管理呢,能很方便的进行不...
  • 版本管理学习

    千次阅读 2016-07-25 12:44:54
    今天在观看孔浩教学视频的时候,学到了关于版本管理的比较基础的知识,于是拿来mark一下,以备今后复习之用。外观这里说的外观指的是软件开发过程中的版本信息,类似于 mysql-connector-java-5.1.7-bin.jar 都是三位...
  • bom版本管理

    千次阅读 2018-07-07 16:40:45
    为了项目的正确运行,必须让所有的子项目使用依赖项的统一版本,必须确保应用的各个项目的依赖项和版本一致,才能保证测试的和发布的是相同的结果。 在我们项目顶层的POM文件中,我们会看到dependencyManagement...
  • 版本管理工具:Subversion Edge

    千次阅读 2016-08-03 22:12:13
    Subversion Edge是Collabnet公司发布的SVN和Apache等组件结合的SVN管理工具。SVN的安装尤其是http方式的访问,需要apache和mod_dav的支持,手动的设定稍稍有一点繁琐,常常伴随着版本的问题给入门级的用户有一点点地...
  • macOS下Java多版本管理

    千次阅读 2018-04-09 23:32:42
    本文介绍macOS下使用HomeBrew和jEnv进行Java多版本管理 升级HomeBrew (首先你得安装HomeBrew) brew update 允许brew命令查找版本信息 brew tap caskroom/versions 查看Java版本 brew cask search java 安装...
  • 软件研发管理之版本管理

    千次阅读 2014-01-21 19:11:57
    版本管理是软件研发管理中比较容易忽视的一环,这当然是比较好理解的,因为版本管理毕竟和具体业务关系不大。其实,版本管理是很多更高级管理制度的基础,如果版本管理做得糟糕,类似代码审查一类的工作就很难高效...
  • idea:项目添加SVN和版本管理快捷键

    万次阅读 2017-12-13 09:21:26
    1.打开svn功能 菜单栏》VCS》Enable Version Control Integration》下拉框选择Subversion》点击OK   2.将项目添加到svn库。 ...选中项目,鼠标右键,Subversion-&... 或者在列表中,选择已经添加过的reposit...
  • 对比SVN学习GIT版本管理工具

    万次阅读 2008-10-31 14:06:00
    对比SVN学习GIT版本管理工具作者:刘旭晖 Raymond转载请注明出处Email:colorant@163.com BLOG:http://blog.csdn.net/colorant/主页:http://sites.google.com/site/rgbbones/ 因为近期工作需要,要掌握git的使用...
  • 软件版本管理规定

    万次阅读 2018-05-30 16:08:41
    3. 职责版本管理员负责统计研发软件的版本信息,管理软件版本号,向软件工程师传达工程及销售人员反馈的软件问题并进行汇总,并在软件升级结束后向生产部集成工程师提供新版本的软件系统。项目负责人及软件工程师...
  • 常见版本管理工具

    万次阅读 2017-09-19 22:22:05
    http://blog.csdn.net/zhourui1982/article/details/4871896 http://wenku.baidu.com/view/054ae81afad6195f312ba6c6.html 一、VSS ...作为 Microsoft Visual Studio 的一名成员,它主
  • 接口API版本管理

    千次阅读 2018-09-06 20:43:06
    1. 引入jar依赖 <dependency> <groupId>com.slowlybirld</groupId> <artifactId>api-version</artifactId> <version>1.0.0</version> <...2....
  • 软件版本管理规范

    万次阅读 2016-11-10 10:29:57
    软件版本管理规范版本:1.0 第一章 目的 本规范详细规定软件项目版本管理的对象、存储目录、分支、权限、维护等内容,使软件项目版本管理流程化并规范化,确保在系统开发和实施过程中项目的完整性和一致性。 第二...
  • APP后台怎么去应对不断的APP版本升级,新、旧接口怎么处理?
  • 版本管理:RCS之命令基础篇

    千次阅读 2016-08-17 07:48:04
    如果想对版本管理实现方式进行深入研究的话,RCS提供了一种最为简单的方式,,v文件是RCS的全部,以文本形式存放,简单易读,对于想深入了解版本管理或者想开发类似工具的开发者来说,绝对是可以借鉴的。
  • Spring Cloud 多版本管理那些事。

    千次阅读 2018-05-22 15:12:14
    好久没有研究 Spring Cloud 了,也没有关注它的更新及新特性,上官网看了下,又增加了几个版本,有正式版有预览版,多达 6 个版本,实在让人蒙逼。 而我们的项目版本还仪停留在 Dalston SR1 版本。 Spring Cloud...

空空如也

1 2 3 4 5 ... 20
收藏数 137,262
精华内容 54,904
关键字:

版本管理