V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
qcbf111
V2EX  ›  git

大家来说说你们都用的什么 Git GUI 工具呢?我来说说我用过的这一些优缺点。

  •  2
     
  •   qcbf111 · 2024-05-27 10:19:43 +08:00 · 21502 次点击
    这是一个创建于 375 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • GitExtension:目前觉得功能最丰富的,但是很久都没有 dark mode ,不喜欢他了。
    • Github Desktop:操作很舒服,但是功能却很多比如没有查看单个文件提交历史,没有 file tree 这些。
    • Fork:pull 需要二次确认,总感觉别扭
    • 小乌龟那个叫啥来着,不是很喜欢这种和资源管理器耦合很深的。
    • CLI 就请不继续聊了,这里只谈 GUI 。
    187 条回复    2024-05-29 15:38:16 +08:00
    1  2  
    tpxcer
        1
    tpxcer  
       2024-05-27 10:20:32 +08:00
    Github Desktop
    ghjh
        2
    ghjh  
       2024-05-27 10:24:17 +08:00   ❤️ 3
    gui 目前只用 vscode 里面一个叫 Git Graph 的插件,回滚啥的,还挺好用的。
    之前还用过一段时间 tig ,算是 tui 的类型吧
    kevenli
        3
    kevenli  
       2024-05-27 10:25:05 +08:00   ❤️ 13
    鹅厂自己的 Git GUI 功能全面,新手友好,而且一些特定场景下有优化
    https://ugit.qq.com/
    QUC062IzY3M1Y6dg
        4
    QUC062IzY3M1Y6dg  
       2024-05-27 10:26:59 +08:00
    @kevenli 看了一下感觉不错啊,功能比 githubdesktop 功能还丰富
    mercurylanded
        5
    mercurylanded  
       2024-05-27 10:28:12 +08:00
    Source Tree 但是现在小毛病不少
    boluochixue
        6
    boluochixue  
       2024-05-27 10:28:37 +08:00
    用的小乌龟
    iosyyy
        7
    iosyyy  
       2024-05-27 10:30:22 +08:00
    idea
    NightFlame
        8
    NightFlame  
       2024-05-27 10:34:19 +08:00
    fork : 按住 CTRL 点 pull
    qcbf111
        9
    qcbf111  
    OP
       2024-05-27 10:35:11 +08:00
    @mercurylanded 哦对,这个忘了说,就是卡不流畅很久没用过了
    qcbf111
        10
    qcbf111  
    OP
       2024-05-27 10:36:55 +08:00
    @NightFlame 哎,为啥这样设计。略微增加了操作复杂度
    kevenli
        11
    kevenli  
       2024-05-27 10:37:07 +08:00
    @shuxhan 是的!他是基于 GitHub Desktop 基础上扩展的
    qcbf111
        12
    qcbf111  
    OP
       2024-05-27 10:37:14 +08:00
    @iosyyy 我现在用的 rider ,感觉还是不如专业 IDE 好用
    jamfer
        13
    jamfer  
       2024-05-27 10:38:39 +08:00   ❤️ 1
    sublime merge
    qcbf111
        14
    qcbf111  
    OP
       2024-05-27 10:38:54 +08:00
    对了,还有个 tower ,使用了一下。最初步骤就郁闷了,对比工具不让我选择 beyond compare (手动选择路径也行呀)
    qcbf111
        15
    qcbf111  
    OP
       2024-05-27 10:42:42 +08:00
    @kevenli #3 牛逼,当场我就把 fork 卸载了。
    kevenli
        16
    kevenli  
       2024-05-27 10:43:54 +08:00
    @qcbf111 (但我都是用 JetBrains IDE 自带的 Git GUI 哈哈哈哈哈哈 感觉游戏开发那边 UGit 用得比较多
    qcbf111
        17
    qcbf111  
    OP
       2024-05-27 10:44:08 +08:00
    @kevenli #3 但是有个 bug ,我设置为 English 之后,重启了客户端,还是依然显示为中文。
    johnhsh
        18
    johnhsh  
       2024-05-27 10:47:21 +08:00   ❤️ 1
    smartgit,管理多个仓库
    nixgnauhcuy
        19
    nixgnauhcuy  
       2024-05-27 10:48:10 +08:00
    TortoiseGit(小乌龟) + Vscode Git 插件
    kevenli
        20
    kevenli  
       2024-05-27 10:49:05 +08:00
    @qcbf111 我用 macOS 版的试了试 没有这个问题诶 可能重新设置一次就好了
    qcbf111
        21
    qcbf111  
    OP
       2024-05-27 10:54:27 +08:00
    @kevenli #20 大佬可以了,原来是点×没有退出(通常理解上是如果最小化到托盘图标首次会有个提示)所以我以为就退出了。 另外我发现 ctrl+w 的逻辑有点怪,比如我打开 A 仓库,然后又点右边加号之后点击设置,这个时候按 ctrl+w 就比较怪了。
    Phariel
        22
    Phariel  
       2024-05-27 10:54:57 +08:00
    Sourcetree 我用了起码十年了 好用 爱用 但我安利了周围人十年 到最后却只有我一个人在用 😂
    kevenli
        23
    kevenli  
       2024-05-27 11:01:50 +08:00
    @qcbf111 可以试下在这里反馈? https://git.code.tencent.com/TencentUGit/UGit/issues (公网)
    我看他版本迭代的挺快的,内网 git 上很活跃,issue 都有人跟进和在新版本中修复(其实 release notes 里面每一点都对应一个 issue ,不过在公网页面上没有显示)
    kekxv
        24
    kekxv  
       2024-05-27 11:02:10 +08:00
    jetbrains 的 ide 算吗
    qcbf111
        25
    qcbf111  
    OP
       2024-05-27 11:02:35 +08:00
    @kevenli #23 好,谢谢。
    pkoukk
        26
    pkoukk  
       2024-05-27 11:04:36 +08:00
    vscode 的 GitLens 插件
    furlxy
        27
    furlxy  
       2024-05-27 11:11:28 +08:00
    tower
    YanxuGong
        28
    YanxuGong  
       2024-05-27 11:13:08 +08:00
    @kevenli #3 一直用的这个,还不错
    LieEar
        29
    LieEar  
       2024-05-27 11:13:53 +08:00
    Sourcetree ,哈哈哈哈。满足我目前的需求了
    Lenic
        30
    Lenic  
       2024-05-27 11:14:14 +08:00   ❤️ 2
    我觉得肯定不会有人用 Magit ,这是 Emacs 用户才会用的神器
    YanxuGong
        31
    YanxuGong  
       2024-05-27 11:14:36 +08:00
    @ghjh Git Graph 经常在 vs code 状态栏消失了,必须重启编辑器才出来,有遇到过没?
    baoei
        32
    baoei  
       2024-05-27 11:15:08 +08:00
    @kevenli 哈哈 第一次知道. 还不错.
    lneoi
        33
    lneoi  
       2024-05-27 11:18:23 +08:00
    在用 fork 不是很重度, 感觉界面不错, 主要是离线环境可用
    Athenalz
        34
    Athenalz  
       2024-05-27 11:20:27 +08:00
    sourcetree 好看且好用,mac 比 windows 更好
    Asan
        35
    Asan  
       2024-05-27 11:22:32 +08:00
    fork ,简单纯粹
    lixile
        36
    lixile  
       2024-05-27 11:23:18 +08:00
    @kevenli 看了下很不错
    奈何 我们是 linux 场景 没有 linux 版本
    另外 web 最下面的日期 似乎两年没有更新了 hhhhhhh
    hangbale
        37
    hangbale  
       2024-05-27 11:26:46 +08:00
    GitKraken
    kevenli
        38
    kevenli  
       2024-05-27 11:40:41 +08:00
    @lixile 哈哈哈哈哈哈哈网页下面的日期确实 不过是有一直在迭代的,可以看 release notes
    我理解这个软件主要服务于游戏业务以及一些桌面端对于 Git 不熟悉的用户,没有 Linux 版本可能也是这个原因
    wu00
        39
    wu00  
       2024-05-27 11:46:52 +08:00
    IDE(Visual Studio)自带的,能应付 99%的场景。
    主要是用习惯了,其它的 GUI 用不了一点...
    zf1968
        40
    zf1968  
       2024-05-27 11:49:38 +08:00   ❤️ 2
    @kekxv jetbrains 内置 git 我感觉是最好用的。
    chanChristin
        41
    chanChristin  
       2024-05-27 11:50:17 +08:00
    @kevenli #3 我们用的阿里云的代码仓库,里面没办法登录。
    kcccc
        42
    kcccc  
       2024-05-27 11:53:14 +08:00
    因为不同项目可能切换 IDE/编辑器,不使用其自带的,一直在用 Sourcetree ,能统一使用习惯。
    chanChristin
        43
    chanChristin  
       2024-05-27 11:55:53 +08:00
    webstorm 自带的 git 工具,在里面切换分支还能自动切换为之前打开的文件
    blinue
        44
    blinue  
       2024-05-27 11:56:16 +08:00
    Sublime Merge 用起来最舒服
    beatboxgao
        45
    beatboxgao  
       2024-05-27 12:02:59 +08:00
    lazygit
    wu67
        46
    wu67  
       2024-05-27 12:08:14 +08:00
    source tree 没什么不好的, 前提是你把 git 当代码仓库, 而不是拿 git 来处理业务问题和流程不规范犯下的错误.
    Terry05
        47
    Terry05  
       2024-05-27 12:08:38 +08:00
    TortoiseGit ,沿用 svn 时代的 TortoiseSVN 的习惯过来的

    也用 vscode 集成的

    工具无所谓好坏,自己用习惯了就行了
    dupenn
        48
    dupenn  
       2024-05-27 12:09:53 +08:00
    GitKraken +1
    aduangduang
        49
    aduangduang  
       2024-05-27 12:11:14 +08:00
    不用
    method
        50
    method  
       2024-05-27 12:28:55 +08:00
    jetbrains 内置 git +1
    jhdxr
        51
    jhdxr  
       2024-05-27 12:37:38 +08:00   ❤️ 1
    sourcetree

    只是习惯了,说实话现在小问题真的不少。
    但它 Windows 和 Mac 都有(且是 native 的)
    Retas
        52
    Retas  
       2024-05-27 12:40:23 +08:00 via iPhone
    fork ,用过 Source Tree ,性能不及 fork ,还碰到过内存泄露
    Volekingsg
        53
    Volekingsg  
       2024-05-27 13:07:09 +08:00
    这么多楼居然都没人提 magit https://magit.vc
    好用到许多迁移到 VSCode 或者 TUI 的尝试
    https://github.com/kahole/edamagit
    https://github.com/altsem/gitu
    shijingshijing
        54
    shijingshijing  
       2024-05-27 13:13:12 +08:00
    Git 官方的 Git Bash 配合 Git GUI ,小乌龟,不过 VSCode 集成的 Git 管理能实现很多骚操作,有时候也用。

    小乌龟的 diff 至今没有任何能与之匹敌的。
    857681664
        55
    857681664  
       2024-05-27 13:13:23 +08:00
    jetbrains 的 gui 用起来挺舒服的,解决冲突的可视化界面很赞
    Greendays
        56
    Greendays  
       2024-05-27 13:14:34 +08:00
    用的 Jetbrains 自带的,也只会用这个了,别的也没用过。
    guin
        57
    guin  
       2024-05-27 13:15:07 +08:00
    @hangbale 这玩意收费太贵了吧,2 美元一个月只能 25 个云仓库,超过了就只能一个月 100 多了
    ZeekChatCom
        58
    ZeekChatCom  
       2024-05-27 13:18:11 +08:00
    jetbrains 自带的很好用。
    Yelou
        59
    Yelou  
       2024-05-27 13:31:59 +08:00
    用过的有 Jetbrains 自带的 gui ,GitKraken ,GitAhead ,都很好用
    iyaozhen
        60
    iyaozhen  
       2024-05-27 13:33:07 +08:00
    Jetbrains 自带的,其它的我都不会用了 哈哈哈
    minami
        61
    minami  
       2024-05-27 13:40:13 +08:00
    @kevenli #3 看了下又是鹅厂祖传的不支持 Linux😅
    pompeii
        62
    pompeii  
       2024-05-27 13:48:09 +08:00
    sourcetree 经常无法推送代码到远程,其他功能挺好用
    RRRoger
        63
    RRRoger  
       2024-05-27 13:50:27 +08:00
    @qcbf111 mac 不卡 windows 卡
    dr2009
        64
    dr2009  
       2024-05-27 13:57:05 +08:00
    GitKraken
    ilovecqrwx
        65
    ilovecqrwx  
       2024-05-27 14:11:48 +08:00
    Jetbrains 自带的,非常好用
    bigTeacher
        66
    bigTeacher  
       2024-05-27 14:16:06 +08:00
    idea 自带的,写个代码需要这么多工具?
    ns09005264
        67
    ns09005264  
       2024-05-27 14:18:20 +08:00
    gitui tui 界面,满足平常使用需求了
    复杂操作用 GitKraken ,不过不常用。
    shoalyu
        68
    shoalyu  
       2024-05-27 14:25:10 +08:00
    source tree 但是感觉越来越慢,快受不了了
    kevenli
        69
    kevenli  
       2024-05-27 14:27:45 +08:00
    @chanChristin 不需要登录也可以的,只要是符合 git 标准的仓库都能打开~
    用 URL 直接 clone ,或者 clone 到本地之后软件打开仓库目录就可以使用了
    kevenli
        70
    kevenli  
       2024-05-27 14:30:34 +08:00
    @minami 如我在#38 所说,这个软件主要也是面向内部需求开发的,迭代完善后开放了一个外部版本
    站在产品的角度,我觉得 Linux 使用者对于计算机相对熟悉,也就相对不太需要用到 Git GUI ,(当然即使需要也有很多替代品,JetBrains 家 IDE 里面自带的 GUI 其实特别完善)
    站在成本的角度,Linux 用户不多,单独维护一个版本不划算,毕竟这不是一个商业化的产品,成本是内部公共分摊的
    chanChristin
        71
    chanChristin  
       2024-05-27 14:32:29 +08:00
    @kevenli #69 能打开,但是不能 push
    yannxia
        72
    yannxia  
       2024-05-27 14:33:07 +08:00
    macos 和 windows 上面免费的 sourcetree 就还可以
    linux 上 smartgit 我觉得最好用(不过新版本已经不对个人用户免费了)
    kevenli
        73
    kevenli  
       2024-05-27 14:38:26 +08:00
    @chanChristin 你们的鉴权方式是什么呀,在设置里配置 SSH 密钥的鉴权方式试试看?(我不确定社区版有没有,我们用的内部版本是支持的~
    lixile
        74
    lixile  
       2024-05-27 14:41:56 +08:00
    @kevenli 其实并不是的 有些高阶 或者涉及 submodule 的部分 很多开发不愿意学的 这是很无奈的
    特别是从 svn 或者 p4 迁移过来的人 这就是为什么我说这个工具很好 真的很适合我们的场景 但是我司是 linux 场景
    不过我看了开发语言 感觉并非没有自行编译 linux 版本的可能性 如果没有调用 c 库的话
    另外问个题外话 我在二次开发 TCA
    我想问一下 https://git.code.tencent.com/TCA/tca-tools/tca_lib.git 是涉密内容吗 所以不开放开源吗
    我对里面的 datahandler 需要有点改动 现在发现没法改
    sampeng
        75
    sampeng  
       2024-05-27 14:53:00 +08:00   ❤️ 3
    以前我也找。后来发现除了 idea 家自带的。没一个能打的。要不是有些操作的逻辑反人类,要么就是某些操作和命令的逻辑对不上,一看是有些参数压根没支持。结果就 idea 家自带秒杀市面的一切 git gui 。这玩意就得研发自己用才知道好坏。别在那美其名曰优化体验了。天天用,自然知道好坏
    DesnLee
        76
    DesnLee  
       2024-05-27 14:57:29 +08:00
    GitKraken 好用
    leon0918
        77
    leon0918  
       2024-05-27 15:00:48 +08:00
    默认用 Sourcetree 但为什么每次都卡的很,可能是我工程太大
    guin
        78
    guin  
       2024-05-27 15:01:26 +08:00
    用 GitKraken 的都不花钱吗? 价格不低呢
    cchaan
        79
    cchaan  
       2024-05-27 15:02:01 +08:00
    常规提交拉取、合并、cherrypick 等 Github Desktop 够用,其他操作上 tortoisegit
    kevenli
        80
    kevenli  
       2024-05-27 15:15:50 +08:00
    @lixile 我看了看 UGit 这个工具本身应该没有对外开源,内部是开源的

    另外你说的 TCA 是这个吗,这个我不了解诶,搜到一些相关的,可以看看
    https://github.com/TCATools/tca_lib (但这个确实只提供了编译好的版本)
    https://github.com/Tencent/CodeAnalysis/blob/main/README_ZH.md
    https://git.code.tencent.com/groups/TCA/tca-tools/-/projects/list
    ShadowPower
        81
    ShadowPower  
       2024-05-27 15:17:01 +08:00
    SourceTree 转 GitKraken 转 Fork ,试用 4 年后买了正版
    yanulg
        82
    yanulg  
       2024-05-27 15:18:11 +08:00
    jet brains 家自带的是最好用的 没争议
    lixile
        83
    lixile  
       2024-05-27 15:37:14 +08:00
    @kevenli 是啊 看来是对外保密的
    DerrickRose
        84
    DerrickRose  
       2024-05-27 15:37:54 +08:00
    source tree + 命令行
    gzldc
        85
    gzldc  
       2024-05-27 15:38:17 +08:00
    source tree + 命令行
    hangszhang
        86
    hangszhang  
       2024-05-27 15:38:28 +08:00
    Jetbrain 自带的,巨好用
    megaz
        87
    megaz  
       2024-05-27 15:39:19 +08:00
    一直用 GitExtension……从来不使用黑暗模式所以没有影响
    ooo4
        88
    ooo4  
       2024-05-27 15:40:31 +08:00
    vscode+命令行
    cheng6563
        89
    cheng6563  
       2024-05-27 15:40:48 +08:00
    小乌龟其实挺好用的,就是烦他会卡资源管理器
    Rehtt
        90
    Rehtt  
       2024-05-27 15:43:39 +08:00 via Android
    lazygit ,虽说是 cli 但也算是 gui
    ![commit_and_push-compressed.gif]( https://github.com/jesseduffield/lazygit/raw/assets/demo/commit_and_push-compressed.gif)
    SoyaDokio
        91
    SoyaDokio  
       2024-05-27 15:54:29 +08:00
    source tree
    很好用,但就一点,冲突合并不会操作,兴是我没找到正确使用方法。
    gadfly3173
        92
    gadfly3173  
       2024-05-27 16:02:48 +08:00 via Android   ❤️ 1
    楼上很多推荐的都不支持 Linux ,我推荐一下 sourcegit https://github.com/sourcegit-scm/sourcegit ,缺点是没有 gittyup 和 gitkraken 都支持的 stage hunk ,其他基本都符合我的需求
    hello2090
        93
    hello2090  
       2024-05-27 16:03:33 +08:00
    sublime merge
    yippees
        94
    yippees  
       2024-05-27 16:11:44 +08:00   ❤️ 1
    说 ugit 的装过没有,试了下。。
    本身就 311M ,还下载了四个 312m UGit-5.19.2-full.nupkg

    安装了 2 个 1.1G 的同名同大小目录

    伺候不起。。。
    mark2025
        95
    mark2025  
       2024-05-27 16:14:47 +08:00   ❤️ 1
    如果简单的 pull, push 应用命令行也不错。

    对于(图形化)交互式 rebase ,我觉得 TortoiseGit(小乌龟) 最舒服。

    TotalCommaner + TortoiseGit + Vim (包括 VSCode + Vim 插件),是我现在还留在 windows 系统的唯一原因(反正也不打游戏), 否则早就转 deepin 了
    mark2025
        96
    mark2025  
       2024-05-27 16:17:52 +08:00
    @shijingshijing 小乌龟的三方 diff 合并太方便了,不晓得 vscode git 的相同功能好用不
    noahlias
        97
    noahlias  
       2024-05-27 16:18:12 +08:00
    看了一整楼 竟然没人提到这个去年出来的
    https://github.com/gitbutlerapp/gitbutler
    XXWHCA
        98
    XXWHCA  
       2024-05-27 16:28:35 +08:00
    @kevenli #3 好像不支持提交自动签名
    caodd
        99
    caodd  
       2024-05-27 16:33:24 +08:00   ❤️ 1
    @YanxuGong #31 Git Graph 会在提交代码的那个对号 √ 右边添加一个图标,点图标就可以打开了。或者添加一个快捷键打开 Git Graph ,我设置的是 Ctrl + Shift + G + G 。
    gadfly3173
        100
    gadfly3173  
       2024-05-27 16:34:00 +08:00 via Android
    @noahlias 他都不能支持带 submodule 的仓库,也没在 git 官网的 GUI 列表里登记
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5704 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 06:28 · PVG 14:28 · LAX 23:28 · JFK 02:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.