前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >GitButler - 全新Git版本管理工具,专为现代工作流程而全新构建

GitButler - 全新Git版本管理工具,专为现代工作流程而全新构建

作者头像
埃兰德欧神
发布2024-07-15 13:28:53
2870
发布2024-07-15 13:28:53
举报
文章被收录于专栏:开源地带

应用截图

GitButler 是一个重新被定义的 git 客户端,是2024年才可以产生的新的git工作流的管理工具。

从应用截图看,左边3列和传统的git客户端都有类似的功能;但是奇迹就发生右边的可拓展区,同一个工作区可以无限增加的多分支模式,让您同时在多个分支上工作。它允许您快速将文件更改组织到单独的分支中,同时仍然将它们应用到您的工作目录。然后,您可以将分支单独推送到远程,或直接创建拉取请求。

简而言之,它是git add -pgit rebase -i的更灵活版本,允许您跨分支高效地执行多任务。

同时多分支是如何工作的?

GitButler 在 Git 之上用一层跟踪未提交的更改。对文件或文件部分内容的更改可以分到我们所说的虚拟分支。只要您对虚拟分支的内容感到满意,就可以将其推送到远程。GitButler 确保其他虚拟分支的状态保持独立。

GitButler 的虚拟分支与 Git 分支有何不同?

我们喜欢 Git 的原因就是分支是完全独立开的,它们之间的切换是完整的上下文切换。GitButler 允许您在同一工作目录中并行处理多个分支。这实际上意味着多个分支的内容同时在一个工作区可用。

GitButler 在提交之前就知道更改。这使得它能够记录每个单独的差异属于哪个虚拟分支。实际上,这意味着您可以随时将各个分支及其内容分开,以将它们推送到远程或从工作目录中取消应用它们。

最后,在 Git 中,您一般需要提前创建所需的分支,而使用 GitButler 您可以在开发过程中的任何时候在虚拟分支之间移动更改。

为什么选择 GitButler?

大家开发的时候应该都是使用 Git 进行版本管理的。GitButler为什么能重新定义Git的工作流呢?跟他的创始人@schacon有关,他就是Pro Git的作者之一,相信这本书大家都或多或少的听过或者读过。与此同时,Git 的用户界面已经 15 年没有发生根本性改变,但如今大多数开发人员都有不同的工作流程和需求。

GitButler不是尝试将 Git CLI 的语义融入图形界面,而是从开发人员工作流程开始,并将其映射回 Git。

GitButler 是一个基于Tauri的应用程序。它的 UI 是使用TypeScript语言,用Svelte编写的,后端是用Rust编写的,从技术栈上看也是近期兴起的。

目前有macOS (Apple Silicon | Intel) · Linux (AppImage | deb)版本,因为是基于 Tauri 相信 Windows版本也会出(社区对于 Windows 的版本呼声很高,也已经有人在 WSL 上适配了 GitButler,但是无法登陆),大家还是等一等官方的 Windows 发布。

主要特性

  1. 虚拟分支
    • 同时组织多个分支的工作,而不是不断切换分支
    • 需要时自动创建新分支
  2. 易于提交管理
    • 通过拖放来撤消、修改和合并提交
  3. GitHub 集成
    • 向 GitHub 进行身份验证以打开拉取请求、列出分支和状态等
  4. 便捷的 SSH 密钥管理
    • GitButler 可以自动生成 SSH 密钥上传到 GitHub
  5. 集成AI工具 使用 OpenAI 的 API 进行差异汇总,这意味着如果启用,代码差异将被发送到 OpenAI 的服务器。如果觉得有安全隐私问题,可以期待后续版本的更新,在Roadmap中提到了后续支持插入不同的 LLM 模型(包括本地的)。
    • 根据您正在进行的工作自动编写提交消息(您可以在首次添加存储库时或稍后在项目设置中启用它)
    • 自动创建描述性分支名称
  6. 提交签名
    • 使用我们生成的 SSH 密钥轻松提交签名

常见工作流使用示例

1. 修复开发功能时的错误

假设在开发一项功能时,您遇到了一个想要修复的错误。通常希望将修复程序作为单独的贡献(拉取请求)来提供。

使用 Git您可以存储更改并切换到另一个分支,您可以在其中提交并推送修复。

使用 GitButler只需将修复分配给一个单独的虚拟分支,您可以单独推送该分支(或直接创建 PR)。另一个好处是,您可以在等待 CI 和/或代码审查时将修复代码保留在工作目录中。

2. 工作进行中想尝试其他人的分支

假设您想测试其他人的分支以进行代码审查。

使用 Git 尝试其他人的分支是与您自己的工作完全分开的上下文切换。

使用 GitButler,您可以直接在工作目录中应用和取消应用(添加/删除)任何远程分支。

注意事项

  1. 虚拟分支需要有远程仓库支持

虚拟分支需要有远程仓库支持

  1. 使用自动编写提交信息或者创建分支,代码都会被上传,注意隐私安全,根据情况谨慎使用

操作视频

https://mpvideo.qpic.cn/0bc3aiadmaaasuah577hp5svaawdgybaanqa.f10002.mp4?

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-03-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开源地带 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 同时多分支是如何工作的?
  • GitButler 的虚拟分支与 Git 分支有何不同?
  • 为什么选择 GitButler?
  • 主要特性
  • 常见工作流使用示例
    • 1. 修复开发功能时的错误
      • 2. 工作进行中想尝试其他人的分支
      • 注意事项
      • 操作视频
      相关产品与服务
      数字身份管控平台
      数字身份管控平台(Identity and Access Management)为您提供集中式的数字身份管控服务。在企业 IT 应用开发时,数字身份管控平台可为您集中管理用户账号、分配访问权限以及配置身份认证规则,避免因员工账号、授权分配不当导致的安全事故。在互联网应用开发时,数字身份管控平台可为您打通应用的身份数据,更好地实现用户画像,也可为用户提供便捷的身份认证体验,提升用户留存。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档