版本控制——SVNGit

2024-09-06 16:18
文章标签 版本控制 svngit

本文主要是介绍版本控制——SVNGit,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

版本控制,相信不管你是做开发,还是学习。在我们程序猿的道路上都是至关重要的。

为什么重要,应用场景在哪?

  1. 手残不小心删除了自己项目的源代码或者文档
  2. 不敢修改自己的源码文件,不确定自己修改后会不会影响以前的功能。(如果不用版本控制,那你只能拷贝了把)
  3. 协同开发把项目传递给别人。或者分享自己的项目(如果不用版本控制,那就只能邮件,QQ,U盘)

总而言之,版本控制在开发中的地位是屹立不倒的。无论你是独立开发还是协同开发
版本控制系统发展,可分为3个阶段
1. 本地版本控制:顾名思义,数据仓库在本地
2. 集中版本控制:服务器和客户端的一种形式,数据仓库在服务器上
3. 分布式版本控制:每一个终端都是相对独立的个体,但是又相对联系起来

版本控制有:
VCS,VSS,CVS,ClearCase,SVN,Perforce,TFS,Mercurial,Git
上述了解即可,现在我们主流使用的是SVN和Git。不要说Git是主流,很多公司仍然在使用SVN

SVN

  • SVN的作者是CVS版本控制开发者之一的Karl Fogel

  • SVN的搭建需要服务器端和客户端的搭建。服务器端个人觉得TortoiseSVN比较好用。下载安装好后会和windows系统集成。(如果是MAC的话,我使用的是eclipse插件集成,这些安装都可以百度的到)。
    windows集成好后,在桌面右击如下
    这就表示windows的集成成功
    MAC在eclipse上插件安装成功如下
    eclipse上面点击关于eclipse会出现如下,点击按钮
    可以查看自己所有安装的插件

  • SVN服务器端可以设置用户的读写权限(很简单,我这里提一下)
  • checkout仓库的代码
    checkout

  • 这里强调一下,第一次检出代码采用checkout,之后都是update

  • SVN常用操作,增删改:
    增:需要先add,再commit
    删:删完之后commit
    改:改完之后commit
    如果不commit,最外层的文件夹是红色的✘。如果保持数据仓库一直,最外层的文件夹是绿色的✔️

  • SVN分支(鱼骨图)
    创建分支,然后就可以来回切换分支进行开发。最后合并成一条主线。为什么叫鱼骨图呢,因为一条主线,上下进行分支,再合并到主线。样子就像鱼骨头一样的
    windows客户端SVN

    MAC上插件SVN

    分支开发,最后合并就可以。分支开发不会影响主线的代码

  • SVN的冲突,SVN能够自动解决冲突。SVN不能解决的冲突是你们提交代码修改了相同的地方。此时SVN会生成3个文件,一个是的你现在本地的,一个是上一个版本的,一个是现在服务器最新版本的。解决方案无非是:1)使用你的代码 2)使用服务器上最新的代码 3)合并你本地和服务器上最新版本的代码。当然也可以有个方法避免冲突,就是锁定你要修改开发的文件,修改完后再解锁。不过应该提前和协同开发的同事打招呼
    这里写图片描述
  • SVN如果是协同开发,每次提交代码的时候记得先更新再提交。这是重点!!!
  • 这里简单的说一下SVN,最基本的使用。

Git

  • Git是Linux的创始人Linus Torvalds开发的开源和免费的版本控制
  • Git的结构原理:
    -不同的版本是快照而不是对比,记录磁盘当前的快照信息
    -几乎所有的操作都是本地的,只有在打补丁的时候,将代码作为补丁push给管理员
    -Git文件的3个状态(都在本地):
    —working directory(工作区域文件);
    —staging area(临时区域存储);
    —git diretory(本地版本仓库)。
    —怎么理解呢?比如:你现在正在开发,撸代码,此时的文件就为正在工作区域状态的文件;当你将你开发的文件add的时候,此时为临时区域存储状态的文件;当你再将该文件commit之后,此时为本地仓库状态的文件
    -文件状态的生命周期
    —untracked:还未受到跟踪,和版本控制没有关系
    —unmodified:已经添加了,但是还没有修改
    —modified:本地已经修改,还未提交
    —staged:已经提交到了仓库里面

  • 下载后会有:Git bash和Git GUI。在安装的时候会有,看心情勾选。Git bash是命令行,Git GUI是界面。如果使用GUI建议使用TortoiseGit.操作界面很像SVN.

  • 今天我也就是了解了一下原理,2年前接触过一点点,之后的工作一直在使用SVN。所以我后面会自己再玩玩git,遇到坑什么的会给大家整理出来。

  • 对于安装什么的网上很多,这里给出我觉得不错的链接。

http://blog.csdn.net/gao_chun/article/details/49817229/

  • 感谢各位大佬。愿各位大佬远离BUG

这篇关于版本控制——SVNGit的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1142503

相关文章

集中式版本控制与分布式版本控制——Git 学习笔记01

什么是版本控制 如果你用 Microsoft Word 写过东西,那你八成会有这样的经历: 想删除一段文字,又怕将来这段文字有用,怎么办呢?有一个办法,先把当前文件“另存为”一个文件,然后继续改,改到某个程度,再“另存为”一个文件。就这样改着、存着……最后你的 Word 文档变成了这样: 过了几天,你想找回被删除的文字,但是已经记不清保存在哪个文件了,只能挨个去找。真麻烦,眼睛都花了。看

eclipse安装subversion(SVN)版本控制插件

陈科肇 查看插件更新站点 网址:http://subclipse.tigris.org/servlets/ProjectProcess?pageID=p4wYuA 网站截图: 根据自己的eclipse版本,选择需要的更新站点. 使用eclipse集成subservion插件 Help > Install New Software…> 等待下载安装插件…

Python知识点:Python开发中,如何使用Git进行版本控制

在 Python 开发中,使用 Git 进行版本控制是非常常见且重要的操作。Git 能帮助你跟踪代码变化、协作开发以及管理项目的不同版本。以下是使用 Git 进行版本控制的基本步骤和流程: 1. 初始化 Git 仓库 在项目文件夹中初始化一个 Git 仓库。 git init 这会创建一个隐藏的 .git 文件夹,用于跟踪版本历史。 2. 配置 Git 在开始使用 Git 前,建议配

Java,版本控制:算法详解与实现

Spring Boot微服务架构技术及其版本号比较优化 随着云技术和分布式系统的快速发展,微服务架构已经成为现代软件开发不可或缺的一部分。 Spring Boot,作为一款广受欢迎的Java开发框架,其简洁的配置和快速启动的特性深受开发者青睐。 配合Spring Cloud,Spring Boot能够帮助开发者构建出既具有高度可伸缩性又具备弹性的微服务架构。 Spring Boot

使用 Versions for mac 进行版本控制

刚开始折腾 xcode 5.1 自己的svn版本控制,应该很好用,但是用不好,搞了半天也没法把工程传到svn服务器上去. 在 xcode 5.1 Soure Control 中弄 点击 Check Out... 下一步(注意选Subversion) 之后 CheckOut 出来即可 但是,这个得先需要你的服务器上有你的代码才行......,找了半天也没

如何使用Git进行C/C++项目的版本控制与协作

如何使用Git进行C/C++项目的版本控制与协作 引言 在现代软件开发中,版本控制系统(VCS)是管理代码变更、协作开发和版本发布的关键工具。Git是最流行的分布式版本控制系统之一,特别适用于C/C++项目的版本控制与协作。本文将详细介绍如何使用Git进行C/C++项目的版本控制,包括Git的基本概念、命令使用、工作流、分支管理、协作技巧以及最佳实践。 1. Git概述 1.1 Git的基

MySQL数据备份的版本控制:策略、实践与自动化

在数据库管理中,数据备份是确保数据安全性和可恢复性的关键步骤。随着数据量的不断增长,如何有效地管理这些备份,特别是实现数据备份的版本控制,成为了一个重要议题。MySQL作为广泛使用的数据库管理系统,提供了多种工具和策略来实现数据备份的版本控制。本文将深入探讨如何在MySQL中实现数据备份的版本控制,包括策略、实践和自动化方法。 1. 数据备份的版本控制概述 数据备份的版本控制是指对数据库备份进

git 版本控制安装

第一:首先注册github 账号,按照提示进行操作即可 第二:本机客户端操作,安装git客户端 第三:进行ssh 免秘钥访问拉取分支 1、打开命令行执行 ssh-keygen -t rsa -C "xxxx23269@sina.com" 2、进入目录 cd .ssh/ 3、生成目录文件 id_rsa与id_rsa.pub文件,秘钥 查看id_rsa,pub里的信息 拷贝 到github 配置中 配

在VScode中使用Git将本地已有文件夹提交到Github仓库以便于使用版本控制进行项目开发

前置软件         VScode、Git。         Linux系统中安装Git工具请自行百度。可以通过git --version查看对应Git版本号。 Github创建空白仓库         一定要注意创建空白仓库,不要包含任何文件,包括Readme.md文件也不能有。           上面的仓库名(Repository name)一定要和本地即将上传到Github

VastBase——VPatch版本控制

一、准备工作 1.概述 VPatch是用于Vastbase版本控制的工具。可以实现在单机环境下的升级和回退操作,具体功能如下: 升级环境检查,补丁冲突检查等。 PSU、PSR、OOP补丁的升级、回退、升级或回退失败时的还原。 升级过程中记录相关日志和步骤文件。 升级过程中管理备份文件。 自vpatch V2.0.0开始,支持在检查和回退时指定--force参数,用于对特殊的可回退升