UGit是一款腾讯自研的Git客户端,旨在为开发者提供更高效、便捷的代码版本控制体验。软件整合了Git的核心功能,并在此基础上进行了优化和扩展,使得代码提交、合并、分支管理等操作更加流畅和高效。UGit非常注重用户代码的安全性,提供了加密存储和传输功能,确保数据的保护。
加速服务:支持Git LFS缓存加速、UE4 DDC、Unity Cache等,提升开发效率。
客户端钩子:支持使用钩子脚本(如Python、Shell、Batch)定制团队工作流,如提交规范检查等。
定时任务:包括定时锁分支、定时更新(下载LFS数据/pull/pull -f三种策略)等,方便进行自动化管理。
仓库同步服务:支持Git/SVN/P4任意两种仓库之间互相按Commit维度进行单向或双向同步,也可进行仓库迁移。
版本标记:支持在UGit仓库历史中标记版本为“好的”、“坏的”、标星等操作,方便版本回溯或版本信息共享。
【便捷的大文件管理】
1、内置LFS模版,腾讯众多大型项目LFS管理经验沉淀,尤其是游戏项目。
2、支持对仓库或工作区进行大文件分析,以便于更好的配置Git LFS规则。
3、提交时,可根据工蜂单文件大小限制,提示用户将超限文件纳入Git LFS管理。
4、支持单仓库或多仓库清理LFS缓存,快速解决磁盘空间不足问题。
5、支持使用UGit本地LFS Cache加速服务,体验极致的下载速度。
6、支持超大文件(>4GB)的无损下载。
【快速提交】
原生Git提交流程,如果远程有新的提交,Git会强制要求先更新再提交,在一个大型项目中,提交流程会因为远程频繁变更而不停中断,影响工作效率。UGit的快速提交,可以实现只要用户提交的文件其他人没修改,可以在不更新情况下直接完成提交,不会因远程频繁变更而中断提交流程,让大型团队协作更加流畅。
【工蜂锁】
1、工蜂锁是针对游戏项目中存在大量二进制文件协作场景而设计的锁方案,解决了Git LFS Lock的稳定性和性能问题。
2、支持对文件、目录进行加解锁。同时也可以支持全分支锁,即加锁一个对象时,同时锁定所有分支上的该对象。
3、支持项目设置强制加锁工作流,要求用户必须先加锁才能提交。
4、支持推送变更到远程后,自动对推送内容进行解锁。
5、也可以配置路径的锁白名单,限定配置的目录只允许特定用户可以加解锁。
1、加速服务
支持Git LFS缓存加速、UE4 DDC、Unity Cache
2、支持客户端钩子(python/shell/batch)
可使用钩子脚本定制团队工作流,如提交规范检查
3、定时任务
包括定时锁分支、定时更新(下载LFS数据/pull/pull -f三种策略)
4、仓库同步服务
支持Git/SVN/P4任意两种仓库之间互相按Commit维度进行单向或双向同步,也可进行仓库迁移
5、分支规则管理
可一键锁定符合规则的分支;
6、多仓库管理
Git Submodule的替代方案,通过可视化操作,旨在解决大型项目多仓库依赖管理问题,支持批量克隆,一键更新、拉分支、切分支等等
7、仓库分组管理
可以对仓库进行分组管理,并且分组信息会展示在仓库标签上
8、变更集分组
可对工作区变更进行分组管理,按分组进行提交
9、集成CodeAction
不用克隆仓库就可以进行代码审查
10、支持Excel Diff&Merge
支持单元格内容、公式,暂不支持表格样式
11、版本标记
支持在UGit仓库历史中标记版本为好的、坏的、标星等操作,方便版本回溯或版本信息共享;
子目录检出:针对大型仓库的管理,UGit引入了子目录检出的功能。开发者可以选择性克隆仓库中的子目录,快速完成工作任务,节约了宝贵的时间与存储空间。
基础操作简便:提供了一系列基础能力,使操作极为简便,接近于SVN或P4的集中式版本控制工具使用体验。这为不熟悉Git的用户提供了入门的便利。
OAuth认证集成:支持工蜂、GitHub和Coding.net等平台的OAuth认证,让用户在多平台之间的操作变得更加无缝。
代码审查与合并请求:集成工蜂的代码审查、合并请求功能,方便在客户端中进行MR评审、代码审查等操作。
分支与版本管理:提供可视化的Gitflow工作流实践、分支管理功能,可以查看分支生命周期、进行批量管理,如快速清理无用分支等。