首页 > 其他分享 >使用SVN服务器和GIT服务器管理同一个项目

使用SVN服务器和GIT服务器管理同一个项目

时间:2024-08-22 16:29:18浏览次数:8  
标签:SVN svn GIT 仓库 Git git 服务器

1. 背景

软件发布版本代码需要提交公司SVN,中间开发环节代码管理采用Git,同一套代码需要同时在两个服务器间进行同步。

 

2. 解决方案

方案1:SVN与Git共存,该方案需要手动同步本地代码、SVN服务器代码、Git服务器代码;

方案2:SVN作为Git的远程分支,该方案在库搭建完成后,可以使用git自带的git svn xxx命令即可完成一系列操作,并且svn上的提交日志也可以在git上看到;

 

3. 搭建流程

3.1. 方案1搭建流程

  • 创建工程存储目录
  • 从SVN服务器上获取项目地址 

  

  • 从SVN上检出项目到本地

 

  

 

  • 在根目录中创建Git仓库

   1、在根目录右键,打开Git Bash;

   2、输入git init命令创建空git项目;

   

    3、查看根目录下是否生成.git文件夹 

   

  • 添加Git的忽略文件.gitignore,并将.svn文件夹加入git忽略

   新建一个文件,并更改名称为.gitignore,打开文件,在里面添加.svn/,如果有多个需要忽略的文件夹,则换行添加,文件夹需要添加‘/’标识;

    

  • 将目录中的文件加入git本地仓库

   此操作和常规git操作一致,直接添加从SVN服务器上获取的文件提交到本地仓库,不做过多说明;

  • 设置git本地仓库的远程仓库

   此操作借助了TortoiseGit工具,在工具设置中,找到Git远端设置,URL中为你GIT远端服务器地址;

    

  • 将git本地仓库文件推送到远程仓库

   初次使用时,需要选择远程仓库的分支,在推送时如果git远程仓库不是空仓库,则可能存在文件冲突问题,比如.gitignore文件,此时需要按需解决冲突;

    

  • 将.git文件夹和.gitignore文件加入svn的忽略文件

   此操作借助了TortoiseSVN工具,在工具设置中,常规设置中的全局忽略样式中添加.git\ .gitignore

   

  • 将git服务器中获取的文件同步到SVN服务器中

   此操作和常规svn操作一致,不做过多说明;

  至此,已经完成SVN服务器和GIT服务器中代码的同步,并且本地只保留一份代码,需要注意的是,若需要实时保持同步,则本地修改后需要分别同步到SVN服务器和GIT服务器中;

3.2. 方案2搭建流程

可参考文档:https://blog.csdn.net/zzxiang1985/article/details/75212244的博客,详细的介绍了搭建步骤;

 

标签:SVN,svn,GIT,仓库,Git,git,服务器
From: https://www.cnblogs.com/ly940120/p/18374138

相关文章

  • 创新实践:流媒体服务器如何推动WebRTC支持H.265及JS硬软解码(MSE硬解、WASM软解)
    为了实现这一全面的解决方案,我们投入了近半年的时间进行调研与研发。我们的主要目标是:让流媒体服务器能够直接传输H.265编码的视频,而无需将其转码为H.264,从而使Chrome浏览器能够无缝解码并播放H.265视频。值得注意的是,目前市场上许多软硬件产品仍采用将H.265转码为H.264的......
  • Git 全套流程命令Command
    Git全套流程命令Command假设你已经在本地初始化了一个Git仓库,并且已经添加了远程仓库地址。1.初始化本地仓库如果你还没有初始化本地仓库,可以使用以下命令:gitinit2.添加远程仓库地址gitremoteaddorigin<remote-repository-url>例如:gitremoteaddorigi......
  • 使用scp将linux服务器中的文件传到windows本地主机上
    开启windows的ssh服务。参考这篇:https://www.cnblogs.com/windheart/p/18373914使用scp命令传文件scp<linx服务器要穿的文件夹或文件路径><windows用户名>@<windowsipv4地址>:<windows保存文件或文件夹的路径>示例:传文件:将当前目录中的cogvideo_2.py传到windows的C......
  • 常见问题解决 --- 为什么我们常常发现服务器没有管理的端口
    我们在扫描一台主机全端口,发现没有开放管理端口,比如windows远程桌面或者是linux的ssh登陆。我列举一下常见的原因。常规管理方式:1.管理口不是常见的3389和22端口,而改为了高位端口号,避免被人发现。2.在管理端口上加上了安全策略导致无法直接连接,比如私钥登陆方......
  • ftp复制报错--serv-u 设置ftp服务器的复制报错解决方式
    ftp复制报错--serv-u设置ftp服务器的复制报错解决方式问题:Serveru-FTP文件复制出错如何解决?1、详细信息:200TpyesettoI.227EnteringPassiveMode(192,168,132,185,4,242)501Syntaxerrorinparametersorarguments.而且发现,中文文件名字数是双数的不会出错,单数的......
  • windows安装ssh服务器
    参考https://cloud.tencent.com/developer/article/1420930检查是否安装openssh服务器这里我已经安装好了。如果没有安装就不会显示,OpenSSH客户端是windows默认安装的。安装openssh服务器以管理员身份启动powershell,注意一定是以管理员身份,而且必须是在powershell中,因......
  • Git入门教程
    一、Git相关概念Git是一种分布式版本控制系统,主要用于跟踪和管理代码的变更。它由LinusTorvalds创建,最初被设计用于Linux内核的开发,现已成为软件开发过程中广泛使用的版本控制工具。1.基本概念版本控制:Git能够跟踪代码的每一次修改,并允许用户回滚到任何一个历史版本,这对......
  • gitlab runner远程连接其他服务器
    1、部署gitlabrunner2、 注册完成后 在代码仓库的根目录有一个流水线脚本 ......
  • gitlab上dev分支的代码更新覆盖到test分支
    在GitLab上,如果你想要将dev分支上的代码更新覆盖到test分支,可以通过以下步骤进行:确保你的本地仓库是最新的:使用gitfetch命令从远程仓库获取最新的分支列表和提交。gitfetchorigin切换到test分支:切换到你想要更新的分支。gitcheckouttest合并dev分支:将dev分支......
  • 七、SPA单页面实现SEO优化之SSR服务器渲染
    前言:关于SPA和SEO优化、SSR服务器渲染的介绍可以参考这里:六、什么是SEO优化(搜索引擎优化)?SPA单页面应用如何实现SEO优化?通过上一篇文章可以了解到,VueSPA单页面应用对SEO不友好,但是也有相应的解决方案。我了解到的SEO的实现方式有以下几种:1.SSR服务器渲染;2.静态化;3.预......