Git与SVN混用作为版本控制

Git与SVN混用作为版本控制

使用场景

公司的项目使用的是SVN服务器作为版本控制而且由于权限管理原因和部分员工不愿意使用Git所以没有做迁移。所以SVN将一直作为公司的主要版本控制工具来使用。本人由于一直使用Git基本没有接触过SVN,对SVN不够了解。对于Git操作比较熟悉,也可以方便在本地建立临时分支来使用。所以决定以SVN作为本地代码和单位代码仓库的管理工具,以Git作为本地开发的版本管理工具来使用。

使用方式

网上有很多git和svn混用的方式,我这里也是参考了一些网上的文章博客等。简要介绍一下目前我所使用的方式和一些常用操作。

  1. clone项目

    git svn clone <svn_repo_url> [project_dir]
    

    通过这种方式可以把svn的项目下载到本地,project_dir作为可选参数,可以指定项目下载的目录名称。

  2. 本地开发

    本地开发的话,由于不能在SVN上自由创建分支,所以本地开发我通常使用Git来管理自己的开发分支。

    SVN项目clone下来后使用的master分支,我以master分支作为SVN的远程最新代码,自己的开发分支统一新建 develop分支上来开发,或者有临时的bugfix分支,或者非版本需求的feature分支。这样可以同时进行多项工作,多项任务互不干扰。

  3. 拉取SVN最新代码

    // 如果当前在非master分支,stash保存当前代码或者直接提交代码。
    git stash
    // 切换到master分支拉取SVN最新代码
    git checkout master
    git svn rebase
    // 之后将master分支的代码合并到的开发分支就可以了。
    
  4. 提交代码到SVN

    由于开发的时候使用的都是其他分支,master分支作为跟SVN交互的一个主干分支,所以你的代码最终都要merge到master分支上面。

    git add .
    git commit -m 'comment'
    git checkout master
    //切换到master分支后直接拉取最新代码
    git svn rebase
    // 拉取后合并分支
    git merge <your_branch>
    // 解决冲突后提交到SVN服务器
    git svn dcommit
    

    由于SVN是每一次提交都会升一次版本号的。这里提交会把你所有的git提交都记录成对应的svn版本号提交到服务器仓库上。

以上就是我将Git和SVN结合使用的一种方式了。希望对你有帮助。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mirt_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值