`
cloudmail
  • 浏览: 271882 次
  • 来自: 广州
社区版块
存档分类
最新评论

同时使用svn和git进行代码版本管理

阅读更多

 

项目环境说明

项目使用svn进行代码版本管理。

 

使用场景

1, 修改了某些文件后,在修改成另外的实现方法前先备份当前已经实现的方案(git commit临时文件)

2, 在不能连接svn服务器的机器上修改svn版本管理的代码,且需要进行版本管理


前期准备

安装git(MSsyGit,TortoiseGit)

安装svn(TortoiseSVN)


测试步骤

 

1, 安装svn TortoiseSVN-1.6.3.16613-win32-svn-1.6.3.msi

2,汉化svn(可选) LanguagePack_1.6.3.16613-win32-zh_CN.msi

3,安装git TortoiseGit-1.2.1.0-32bit.msi;Git-1.6.5.1-preview20100112-with-cheetah.exe

4,创建svn服务器代码库

4.1 在D:\svn_git新建目录svnRepository

4.2 进入D:\svn_git\svnRepository目录,右键选择TortoiseSVN->Create repository here,完成后可看到会生成几个文件夹和文件

 

5, 创建git服务器代码库

5.1 在D:\svn_git新建目录gitRepository

5.2 进入D:\svn_git\gitRepository目录,右键选择Git Create repository here,完成后可看到生成.git文件夹

 

6, 将svn服务器代码库checkout到本地,并做一些修改后提交到svn代码库

6.1 在D:\svn_git新建目录svn.local1

6.2 进入D:\svn_git\svn.local1目录,右键选择SVN Checkout,在弹出窗口的”URL of repository"填写"file:///D:/svn_git/svnRepository","Checkout directory"保留默认值"D:\svn_git\svn.local1",完成后可看到生成.svn文件夹

6.3 进入D:\svn_git\svn.local1目录,新建trunk,branches,tags文件夹,并svn commit到svn服务器代码库

6.4 进入D:\svn_git\svn.local1\trunk目录,新建文件test1.cpp写个Hello World程序,并svn commit到svn服务器代码库

 

7, 将svn服务器trunk代码库的代码checkout到另外一个目录

7.1 在D:\svn_git新建目录svn.local2

7.2 进入D:\svn_git\svn.local2,右键选择SVN Checkout,在弹出窗口的”URL of repository"填写"file:///D:/svn_git/svnRepository/trunk","Checkout directory"保留默认值"D:\svn_git\svn.local2",完成后可看到生成.svn文件夹和test1.cpp文件

到此,D:\svn_git\svn.local1\trunk和D:\svn_git\svn.local2使用相同的svn服务器代码库,在任意一个地方修改,svn commit后,在另外一个地方都可通过svn update来同步

 

8, 将git服务器代码库checkout到本地,并作一些修改后提交到git代码库

8.1 在D:\svn_git新建目录git.local1

8.2 进入D:\svn_git\git.local1目录,右键选择"Git Clone",在弹出窗口的"URL"填写"file:///D:/svn_git/gitRepository","Directory"保留默认值"D:\svn_git\git.local1",完成后可看到生成.git文件夹

8.3 进入D:\svn_git\git.local1目录,新建trunk,branches,tags文件夹,并git commit到git服务器代码库

 

9,在本地随便修改几个文件,但由于还不能确定是最后的代码,所以不能提交到svn,采取临时提交到git的办法来管理。先提交到git,等确定是最后代码后再提交到svn,这是svn和git的代码相同。一段时间后,如果发现之前提交到git的某个版本的代码更合适,可以使用git revert到相应的版本,再提交到svn和git。

 

可以看出,同时使用svn和git管理代码非常方便回滚,并且保证svn的代码总是认为是稳定的

 

分享到:
评论

相关推荐

    版本管理_svn和git常用操作

    版本管理系统如svn和git,对于团队协作和项目维护至关重要。理解并熟练掌握它们的操作,能极大提高开发效率,确保代码的质量和稳定性。无论是svn的简单分支模型还是git的分布式特性,都为开发者提供了灵活的工作流程...

    git和svn学习入门教程

    Git和Subversion(SVN)都是版本控制系统,用于跟踪和管理软件开发中的代码变更。它们在代码管理和协作方面发挥着至关重要的作用。本教程将帮助初学者了解这两者的基础知识,以便选择适合自己的工具。 首先,让我们...

    SVN和Git简单使用文档

    综上所述,了解和熟练掌握SVN和Git的使用对于任何软件开发团队都是必要的,这有助于提高代码质量和团队协作效率。通过阅读提供的文档和演示,你应该能够更好地理解这两种工具,并根据项目需求选择合适的一个。

    版本控制Svn&Git;整套视频教学

    同时,"代码版本控制"是整个课程的核心,强调了对代码历史和版本管理的重要性。 虽然提供的【压缩包子文件的文件名称列表】没有直接的视频内容,但我们可以推测其中可能包含课程介绍文档(Sundy-Android高级应用...

    svn2git.zip

    总之,svn2git是一个使用Ruby编写的实用工具,它简化了从Subversion到Git的迁移过程,同时保持了版本历史的完整性和项目结构的对应关系。通过使用这个工具,开发团队可以充分利用Git的分布式特性和强大的分支管理...

    SVN和GIT中文版使用手册

    通过阅读"SVN使用手册"和"Git使用手册",以及深入研究"Git使用技巧",你可以全面了解这两个工具的使用方法,提升你在版本控制方面的专业技能。无论是SVN的集中式管理还是Git的分布式特性,都能帮助你更好地管理项目...

    svn-git插件Jenkins.zip

    《Jenkins中的svn-git插件详解...通过正确地配置和使用svn-git插件,开发者可以在享受Git的高效开发流程的同时,保持与原有SVN仓库的兼容性,这对于大型项目或者有着长期历史的代码库来说,是一种极具价值的解决方案。

    git 、svn 代码版本管理工具所有合集.7z

    总结来说,"git、svn 代码版本管理工具所有合集.7z" 包含了当前最主流的版本控制工具,无论是 Git 还是 SVN,都有相应的图形化客户端支持。Sourcetree 适用于 Git 用户,而 TortoiseSVN 和 TortoiseGit 则为 SVN 和 ...

    git-svn使用用法

    在一些项目中,由于历史原因可能仍在使用SVN作为中央版本控制系统,而git-svn可以使得开发者在本地使用Git的强大功能进行版本控制,同时又能与SVN仓库保持同步。使用场景包括但不限于项目需要与使用SVN的团队合作、...

    版本控制svn+git

    这里我们主要探讨两种广泛使用的版本控制系统:Subversion(SVN)和Git。 **Subversion(SVN)** SVN是一款集中式版本控制系统,它的核心思想是将所有文件的版本存储在一个中央仓库中。用户通过连接到这个仓库来...

    SVN 与 GIT比较

    SVN(Subversion)和GIT是目前流行的两种版本控制系统,它们各自有独特的设计哲学和工作机制。尽管它们的基本目的都是帮助程序员们高效地管理代码变更,但在实际应用中,它们在功能、性能和用户体验方面存在着显著...

    svn转化为git

    在过去的许多年里,Subversion(SVN)是广泛应用的版本控制系统,但随着时间的发展,Git逐渐崭露头角,因其分布式特性和强大的功能而受到广泛欢迎。本文将详细介绍如何将现有的SVN仓库转换为Git仓库,以便更好地适应...

    git和svn的比较

    Git和SVN是两个最常用的版本控制系统,它们都是为了帮助开发者更好地管理代码、追踪变化、协作开发而设计的。那么,它们之间有什么区别呢?下面,我们将对Git和SVN进行比较,详细介绍它们各自的优缺点。 Git是什么...

    版本控制SVN和GIT笔记

    集中式版本控制系统以CVS和SVN为代表,它们使用一个单一集中管理的服务器来保存所有文件的修订版本,所有开发者从该服务器下载最新版本,进行开发并提交更改。CVS是最早的开源版本控制系统之一,它可以跨平台使用,...

    SVN和GIT在MAC客户端

    SVN(Subversion)和Git是两种非常流行的版本控制系统,它们在软件开发中扮演着重要的角色,用于管理和跟踪代码的变化。在MAC操作系统中,有多种客户端工具可以帮助用户更方便地与这两个系统交互。本篇文章将重点...

    SVN和GIT视频教程2019(百度云).txt

    01_创建虚拟机、02_为什么要使用版本控制、03_单用户的SVN代码管理、04_仓库的备份和还原、05_多用户共同管理代码的冲突、06_使用版本控制问题都可以得到解决、07_文件锁、08_SVN提交代码规范、09_SVN图标、10_添加...

    git和svn的区别

    - **SVN**在提交代码之前,通常建议先进行更新(Update),以确保本地代码与服务器上的最新版本一致。这样做的目的是避免因版本不一致导致的编译错误或功能问题。 - **Git**由于其分布式特性,用户可以在提交前自行...

    svn迁移到git保留commit信息,后续还能维护从svn同步代码到git(亲测有效,网上资源整理最终版)

    公司代码要从svn迁移到git,不想笨笨的重新上传一份新代码,于是研究了下svn代码到git的迁移同时还要保留commit信息,尝试了很久终于成功啦;在保留commit信息的同时,还能继续从svn同步代码到git,这样即使还有人...

    简易SVN/GIT下载器

    简易的SVN代码下载器,同时支持GIT,可以完整实现SVN/GIT的checkout,并演示如何解析svn协议的XML,以及下载项目,方便想要深入了解SVN这类代码管理系统的构造以及二次开发的朋友,非常小巧作为工具用也是不错的

    IDEA 2020 设置项目集成git 及svn和git之间的切换问题

    关闭IDEA,使用不同的工作目录分别打开Git项目和SVN项目,这样可以避免版本控制系统的冲突。 5. **注意**: 切换时,一定要保存好当前版本的代码,以防丢失任何未提交的更改。同时,了解两种版本控制系统之间的差异...

Global site tag (gtag.js) - Google Analytics