V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
NASK

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

  •  
  •   NASK · Mar 7, 2025 · 1507 views
    This topic created in 426 days ago, the information mentioned may be changed or developed.

    实在是受不了公司的 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 replies    2025-03-08 14:36:44 +08:00
    Vaspike
        1
    Vaspike  
       Mar 7, 2025
    命题这么眼熟,刚想说我发过帖子, 然后看到结尾的链接了

    我已经说服我们大领导改用 git + gitlab 了,这才是终极方案
    NASK
        2
    NASK  
    OP
       Mar 7, 2025 via iPhone
    @Vaspike 羡慕
    hwdq0012
        3
    hwdq0012  
       Mar 8, 2025
    @Vaspike gitlable 社区版不是早不维护了吗,又旧又有 bug, 改用 forgejo 吧
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   921 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 21:17 · PVG 05:17 · LAX 14:17 · JFK 17:17
    ♥ Do have faith in what you're doing.