UGit:腾讯自研的Git客户端新宠

UGit 是一款专门针对腾讯内部研发环境特点量身定制的 Git 客户端,其目标在于大幅提升开发效率以及确保团队协作的高度流畅性。UGit 能够良好地支持 macOS 10.11 及以上版本、Apple Silicon 以及 Win64 位系统。

可以下载体验一把。

https://ugit.qq.com/zh/index.html

便捷的大文件管理

  • 内置LFS模版,腾讯众多大型项目LFS管理经验沉淀,尤其是游戏项目。
  • 支持对仓库或工作区进行大文件分析,以便于更好的配置Git LFS规则。
  • 提交时,可根据工蜂单文件大小限制,提示用户将超限文件纳入Git LFS管理。
  • 支持单仓库或多仓库清理LFS缓存,快速解决磁盘空间不足问题。
  • 支持使用UGit本地LFS Cache加速服务,体验极致的下载速度。
  • 支持超大文件(>4GB)的无损下载。

快速提交

原生Git提交流程,如果远程有新的提交,Git会强制要求先更新再提交,在一个大型项目中,提交流程会因为远程频繁变更而不停中断,影响工作效率。UGit的快速提交,可以实现只要用户提交的文件其他人没修改,可以在不更新情况下直接完成提交,不会因远程频繁变更而中断提交流程,让大型团队协作更加流畅。

工蜂锁

  • 工蜂锁是针对游戏项目中存在大量二进制文件协作场景而设计的锁方案,解决了Git LFS Lock的稳定性和性能问题。
  • 支持对文件、目录进行加解锁。同时也可以支持全分支锁,即加锁一个对象时,同时锁定所有分支上的该对象。
  • 支持项目设置强制加锁工作流,要求用户必须先加锁才能提交。
  • 支持推送变更到远程后,自动对推送内容进行解锁。
  • 也可以配置路径的锁白名单,限定配置的目录只允许特定用户可以加解锁。

支持检出子目录

对于大型仓库,克隆完整仓库下来可能需要很长时间,有些时候,我们只需要下载一个或若干子目录即可进行工作,此时可以使用UGit克隆时,只勾选工作需要用到的目录进行克隆,这样可以快速完成,不用等待。

基础能力

  • 极简操作,类似于SVN或P4的集中式版本控制工具体验,可一键提交或更新
  • OAuth,支持工蜂、Github、Coding.net平台的OAuth认证
  • 集成工蜂合并请求,便捷的在客户端中进行MR评审或操作
  • 集成工蜂代码审查,在UGit中进行代码审查
  • 集成工蜂Issue管理,邮件式的产品体验,可便捷、快速的查看、修改或评论Issue
  • Gitflow,可视化的交互集成业界经典的Gitflow工作流实践
  • 分支管理,可以查看分支生命周期、批量管理,比如可以快速批量清理无用分支
  • SSH访问工蜂,支持零配置使用SSH访问工蜂
  • 提交关联,可在提交时关联工蜂Issue

特色能力

  • 加速服务,支持Git LFS缓存加速、UE4 DDC、Unity Cache
  • 支持客户端钩子(python/shell/batch),可使用钩子脚本定制团队工作流,如提交规范检查
  • 定时任务,包括定时锁分支、定时更新(下载LFS数据/pull/pull -f三种策略)
  • 仓库同步服务,支持Git/SVN/P4任意两种仓库之间互相按Commit维度进行单向或双向同步,也可进行仓库迁移
  • 分支规则管理,可一键锁定符合规则的分支;
  • 多仓库管理,Git Submodule的替代方案,通过可视化操作,旨在解决大型项目多仓库依赖管理问题,支持批量克隆,一键更新、拉分支、切分支等等
  • 仓库分组管理,可以对仓库进行分组管理,并且分组信息会展示在仓库标签上
  • 变更集分组,可对工作区变更进行分组管理,按分组进行提交
  • 集成CodeAction,不用克隆仓库就可以进行代码审查
  • 支持Excel Diff&Merge,支持单元格内容、公式,暂不支持表格样式
  • 版本标记,支持在UGit仓库历史中标记版本为好的、坏的、标星等操作,方便版本回溯或版本信息共享;
相关推荐
triticale1 分钟前
【蓝桥杯】P12165 [蓝桥杯 2025 省 C/Java A] 最短距离
java·蓝桥杯
Felven1 分钟前
A. Ideal Generator
java·数据结构·算法
秋野酱9 分钟前
基于 Spring Boot 的银行柜台管理系统设计与实现(源码+文档+部署讲解)
java·spring boot·后端
JAVA学习通23 分钟前
JAVA多线程(8.0)
java·开发语言
不当菜虚困26 分钟前
JAVA设计模式——(七)代理模式
java·设计模式·代理模式
Luck_ff081026 分钟前
【Python爬虫详解】第四篇:使用解析库提取网页数据——BeautifuSoup
开发语言·爬虫·python
学渣6765634 分钟前
什么时候使用Python 虚拟环境(venv)而不用conda
开发语言·python·conda
joke_xiaoli35 分钟前
tomcat Server 连接服务器 进展
java·服务器·tomcat
想睡hhh1 小时前
c++STL——stack、queue、priority_queue的模拟实现
开发语言·c++·stl
陶然同学1 小时前
RabbitMQ全栈实践手册:从零搭建消息中间件到SpringAMQP高阶玩法
java·分布式·学习·rabbitmq·mq