V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NASK
V2EX  ›  分享发现

使用 git svn 进行版本控制(本地使用 git 仓库,远程使用使用 svn 仓库)

  •  
  •   NASK · 22 天前 · 822 次点击

    实在是受不了公司的 svn 了,最近尝试从 svn 切换到 git ,总结了一下常用的命令。如果总结的有误,烦请指正。 第一次使用从 svn 获取代码

    git svn  clone  svn://svn.svnbucket.com/xxxx/demo/trunk/
    
    

    从 svn 获取更新

    git svn rebase
    

    提交代码到本地 git 仓库

    git add  .
    git commit -m "update"
    

    提交到 svn

    git svn dcommit
    
    

    如何解决冲突

    git svn rebase 从 svn 获取代码遇到冲突后,
    解决冲突的代码
    然后
    git add .
    git commit -m "update"
    git rebase --continue
    最后 git svn  dcommit  提交到 svn
    

    如果执行 git svn rebase 报错,按照下面的步骤就可以获取更新了 (进行 git rebase 操作时,通常不允许有未保存的修改( unstaged/uncommitted changes ))

    git stash  //暂存
    git svn rebase  //更新
    git stash pop // 暂存
    

    要在 IntelliJ IDEA 中实现自动执行 git svn dcommit 和 git svn rebase 的功能,参考这个帖子 https://v2ex.com/t/1068059

    3 条回复    2025-03-08 14:36:44 +08:00
    Vaspike
        1
    Vaspike  
       22 天前
    命题这么眼熟,刚想说我发过帖子, 然后看到结尾的链接了

    我已经说服我们大领导改用 git + gitlab 了,这才是终极方案
    NASK
        2
    NASK  
    OP
       22 天前 via iPhone
    @Vaspike 羡慕
    hwdq0012
        3
    hwdq0012  
       21 天前
    @Vaspike gitlable 社区版不是早不维护了吗,又旧又有 bug, 改用 forgejo 吧
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   933 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 22:40 · PVG 06:40 · LAX 15:40 · JFK 18:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.