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仓库历史中标记版本为好的、坏的、标星等操作,方便版本回溯或版本信息共享;
相关推荐
无问8173 分钟前
数据结构-排序(冒泡,选择,插入,希尔,快排,归并,堆排)
java·数据结构·排序算法
m0_6312704021 分钟前
高级c语言(五)
c语言·开发语言
customer0824 分钟前
【开源免费】基于SpringBoot+Vue.JS在线文档管理系统(JAVA毕业设计)
java·vue.js·spring boot·后端·开源
2401_8582861127 分钟前
53.【C语言】 字符函数和字符串函数(strcmp函数)
c语言·开发语言
Flying_Fish_roe42 分钟前
Spring Boot-版本兼容性问题
java·spring boot·后端
程序猿进阶43 分钟前
如何在 Visual Studio Code 中反编译具有正确行号的 Java 类?
java·ide·vscode·算法·面试·职场和发展·架构
程序猿练习生1 小时前
C++速通LeetCode中等第5题-无重复字符的最长字串
开发语言·c++·leetcode
slandarer1 小时前
MATLAB | R2024b更新了哪些好玩的东西?
java·数据结构·matlab
2401_858120261 小时前
MATLAB中的无线通信系统部署和优化工具有哪些
开发语言·matlab
MATLAB滤波1 小时前
【PSINS】基于PSINS工具箱的EKF+UKF对比程序|三维定位|组合导航|MATLAB
开发语言·matlab