当前位置: 首页 > news >正文

【工具类】git log 常用别名,git log 干活,git log常用参数

git log 常用参数及 .gitconfig 配置

  • git log 常用参数及 .gitconfig 配置
    • 干货,执行下边命令,添加别名
    • git log 参数
    • 参考资料

干货,执行下边命令,添加别名

  • 注意,需要将 knowledgebao 修改为自己的名字,根据自己需要添加,常用的别名有:st ll lg lga lgb
  • 执行下边语句,添加各种快捷键,执行 git lm, git lms, git ls, git lsm … 等试试效果吧
git config --global alias.co "checkout"
git config --global alias.ck "checkout --track -b" # checkout and tracked
git config --global alias.ci "commit"
git config --global alias.cl "clean -x -d -f"  # force clean and remove ignored files.
git config --global alias.st "status"
git config --global alias.sst "status --ignore-submodules=all"
git config --global alias.pl "pull"
git config --global alias.ps "push"
git config --global alias.lb "remote show origin"  # list branch
git config --global alias.li "status --short --porcelain --ignored"  # list ignored
git config --global alias.lo "ls-files -o '--exclude=build/*' '--exclude=.vscode/*'"  # list others
git config --global alias.cp "cherry-pick"
git config --global alias.ca "commit -a"
git config --global alias.br "branch"
git config --global alias.df "diff --ignore-cr-at-eol --ignore-space-at-eol"
git config --global alias.dc "diff --cached --ignore-cr-at-eol --ignore-space-at-eol"
git config --global alias.m "merge"
git config --global alias.dt "difftool"
git config --global alias.mt "mergetool"
git config --global alias.desc "describe --tags --long"# 通过 git lm 查看自己的修改记录,关键字 --author --abbrev-commit
git config --global alias.lm "log --no-merges --color --author='knowledgebao' --date=format:'%Y-%m-%d %H:%M:%S' --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Cblue %s %Cgreen(%cd) %C(bold blue)<%an>%Creset' --abbrev-commit"# 通过 git lms 查看自己的修改记录, 同步显示被修改的文件,关键字 --stat --author --abbrev-commit
git config --global alias.lms "log --no-merges --color --stat --author='knowledgebao' --date=format:'%Y-%m-%d %H:%M:%S' --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Cblue %s %Cgreen(%cd) %C(bold blue)<%an>%Creset' --abbrev-commit"# 通过 git ls 查看所有的修改记录,关键字 --graph --abbrev-commit
git config --global alias.ls "log --no-merges --color --graph --date=format:'%Y-%m-%d %H:%M:%S' --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Cblue %s %Cgreen(%cd) %C(bold blue)<%an>%Creset' --abbrev-commit"# 通过 git lss 查看所有的修改记录,同步显示被修改的文件,关键字 --stat --graph --abbrev-commit
git config --global alias.lss "log --no-merges --color --stat --graph --date=format:'%Y-%m-%d %H:%M:%S' --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Cblue %s %Cgreen(%cd) %C(bold blue)<%an>%Creset' --abbrev-commit"# 通过 git ll  关键字 --first-parent
git config --global alias.ll "log --graph --oneline --abbrev-commit --decorate --first-parent --pretty='tformat:%ai %C(auto) %h %d %s %Cblue<%an %ar>'"# 通过 git lg  关键字 --branches
git config --global alias.lg "log --graph --oneline --abbrev-commit --decorate --branches --pretty='format:%C(auto) %h %d %s %Cblue<%an %ar>'"# 通过 git lga  关键字 --all
git config --global alias.lga "log --graph --oneline --abbrev-commit --decorate --all --pretty='format:%C(auto) %h %d %s %Cblue<%an %ar>'"# 通过 git lgb  关键字 --all --simplify-by-decoration
git config --global alias.lgb "log --graph --oneline --abbrev-commit --decorate --all --simplify-by-decoration --pretty='format:%C(auto) %h %d %s %Cblue<%an %ar>'"

执行后 ~/gitconfig 文件内容增加了下边内容

[alias]co = checkoutck = checkout --track -bci = commitcl = clean -x -d -fst = statussst = status --ignore-submodules=allpl = pullps = pushlb = remote show originli = status --short --porcelain --ignoredlo = ls-files -o '--exclude=build/*' '--exclude=.vscode/*'cp = cherry-pickca = commit -abr = branchdf = diff --ignore-cr-at-eol --ignore-space-at-eoldc = diff --cached --ignore-cr-at-eol --ignore-space-at-eolm = mergedt = difftoolmt = mergetooldesc = describe --tags --longlm = log --no-merges --color --author='knowledgebao' --date=format:'%Y-%m-%d %H:%M:%S' --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Cblue %s %Cgreen(%cd) %C(bold blue)<%an>%Creset' --abbrev-commitlms = log --no-merges --color --stat --author='knowledgebao' --date=format:'%Y-%m-%d %H:%M:%S' --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Cblue %s %Cgreen(%cd) %C(bold blue)<%an>%Creset' --abbrev-commitls = log --no-merges --color --graph --date=format:'%Y-%m-%d %H:%M:%S' --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Cblue %s %Cgreen(%cd) %C(bold blue)<%an>%Creset' --abbrev-commitlss = log --no-merges --color --stat --graph --date=format:'%Y-%m-%d %H:%M:%S' --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Cblue %s %Cgreen(%cd) %C(bold blue)<%an>%Creset' --abbrev-commitll = log --graph --oneline --abbrev-commit --decorate --first-parent --pretty='tformat:%ai %C(auto) %h %d %s %Cblue<%an %ar>'lg = log --graph --oneline --abbrev-commit --decorate --branches --pretty='format:%C(auto) %h %d %s %Cblue<%an %ar>'lga = log --graph --oneline --abbrev-commit --decorate --all --pretty='format:%C(auto) %h %d %s %Cblue<%an %ar>'lgb = log --graph --oneline --abbrev-commit --decorate --all --simplify-by-decoration --pretty='format:%C(auto) %h %d %s %Cblue<%an %ar>'

git log 参数

git log --help 查看,1700多行帮助

       --follow--no-decorate, --decorate[=short|full|auto|no]--decorate-refs=<pattern>, --decorate-refs-exclude=<pattern>--source--[no-]use-mailmap--full-diff--log-size--summary, --name-only, --name-status, --check) are not currently implemented.--grep=<pattern> further limits to commits whose log message has a line that matches <pattern>), unless otherwise noted.--skip=<number>--since=<date>, --after=<date>--until=<date>, --before=<date>--author=<pattern>, --committer=<pattern>--author=<pattern>, commits whose author matches any of the given patterns are chosen (similarly for multiple --committer=<pattern>).--grep-reflog=<pattern>--grep=<pattern>--grep=<pattern>, commits whose message matches any of the given patterns are chosen (but see --all-match).--all-match--invert-grep--basic-regexp--remove-empty--merges--no-merges--min-parents=<number>, --max-parents=<number>, --no-min-parents, --no-max-parents--min-parents=2 is the same as --merges.  --max-parents=0 gives all root commits and --min-parents=3 all octopus merges.--no-min-parents and --no-max-parents reset these limits (to no limit) again. Equivalent forms are --min-parents=0 (any commit has 0 or more--first-parent--not--all--branches[=<pattern>]--tags[=<pattern>]--remotes[=<pattern>]--glob=<glob-pattern>--exclude=<glob-pattern>--reflog--alternate-refs--single-worktree--ignore-missing--bisect--stdin--cherry-mark--cherry-pick--left-only, --right-only--cherry--merge--boundary--simplify-by-decoration--full-history--dense--sparse--simplify-merges--ancestry-path--full-history without parent rewriting--full-history with parent rewriting--dense--sparse--simplify-merges--ancestry-path--date-order--author-date-order--topo-order---1----2----4----7--reverse--no-walk[=(sorted|unsorted)]--do-walk--pretty[=<format>], --format=<format>--pretty=tformat:<format> were given.--abbrev-commit--no-abbrev-commit--oneline--encoding=<encoding>--expand-tabs=<n>, --expand-tabs, --no-expand-tabs--expand-tabs=0, which disables tab expansion.--notes[=<ref>]--no-notes--show-notes[=<ref>], --[no-]standard-notes--show-signature--relative-date--date=<format>--date=relative shows dates relative to the current time, e.g. “2 hours ago”. The -local option has no effect for --date=relative.--date=local is an alias for --date=default-local.--date=iso (or --date=iso8601) shows timestamps in a ISO 8601-like format. The differences to the strict ISO 8601 format are:--date=iso-strict (or --date=iso8601-strict) shows timestamps in strict ISO 8601 format.--date=rfc (or --date=rfc2822) shows timestamps in RFC 2822 format, often found in email messages.--date=short shows only the date, but not the time, in YYYY-MM-DD format.--date=raw shows the date as seconds since the epoch (1970-01-01 00:00:00 UTC), followed by a space, and then the timezone as an offset from--date=human shows the timezone if the timezone does not match the current time-zone, and doesn’t print the whole date if that matches (ie--date=unix shows the date as a Unix epoch timestamp (seconds since 1970). As with --raw, this is always in UTC and therefore -local has no--date=format:...  feeds the format ...  to your system strftime, except for %z and %Z, which are handled internally. Use --date=format:%c to--date=default is the default format, and is similar to --date=rfc2822, with a few exceptions:--parents--children--left-right--graph--show-linear-break[=<barrier>]--cc--combined-all-paths--cc are specified, and is likely only useful if filename changes are detected (i.e. when either rename or copy detection have been--raw. To get full object names in a raw diff format, use --no-abbrev.--output=<file>--output-indicator-new=<char>, --output-indicator-old=<char>, --output-indicator-context=<char>--raw--patch-with-raw--indent-heuristic--no-indent-heuristic--minimal--patience--histogram--anchored=<text>--diff-algorithm={patience|minimal|histogram|myers}--diff-algorithm=default option.--stat[=<width>[,<name-width>[,<count>]]]--stat-graph-width=<width> (affects all commands generating a stat graph) or by setting diff.statGraphWidth=<width> (does not affect git--compact-summary--numstat--shortstat--cumulative--dirstat-by-file[=<param1,param2>...]--summary--patch-with-stat--name-only--name-status--submodule[=<format>]--color[=<when>]--no-color--color-moved[=<mode>]--no-color-moved--color-moved-ws=<modes>--no-color-moved-ws--color-moved-ws=no.--word-diff[=<mode>]--word-diff-regex=<regex>--color-words[=<regex>]--no-renames--[no-]rename-empty--check--ws-error-highlight=<kind>--full-index--binary--abbrev[=<n>]--find-copies-harder--diff-filter=[(A|C|D|M|R|T|U|X|B)...[*]]--find-object=<object-id>--pickaxe-all--pickaxe-regex--relative[=<path>]--ignore-cr-at-eol--ignore-space-at-eol--ignore-blank-lines--inter-hunk-context=<lines>--ext-diff--no-ext-diff--textconv, --no-textconv--ignore-submodules[=<when>]--src-prefix=<prefix>--dst-prefix=<prefix>--no-prefix--line-prefix=<prefix>--ita-invisible-in-index--ita-visible-in-index. Both options are experimental and could be removed in future.--- a/describe.c--- a/file--- a/file--- a/file--- a/file--notes=<ref> option.

–abbrev-commit 仅显示 SHA-1 的前几个字符,而非所有的 40 个字符。
–stat 显示每次更新的文件修改统计信息
–graph 显示 ASCII 图形表示的分支合并历史。
–no-merges 没有合并的提交信息
–color
–oneline --pretty=oneline --abbrev-commit 合用的简写。
–decorate 参数用来显示一些相关的信息,如HEAD、分支名、tag名等
–first-parent 紧当前分支的父分支
–author=‘xxx’ 提交至,使用单引号
–date=format:‘%Y-%m-%d %H:%M:%S’ 时间格式

–pretty 使用其他格式显示历史提交信息。可用的选项包括 oneline,short,full,fuller 和 format(后跟指定格式)
–pretty=format:‘%C(red)%h%Creset -%C(yellow)%d%C(blue) %s %C(green)(%cd) %C(bold blue)<%an>%C(reset)’
–pretty=format:‘%C(auto) %h %d %s %C(blue)<%an %ar>’
–pretty=format:‘%ai %C(auto) %h %d %s %C(blue)<%an %ar>’

  • format:
    • %H 提交对象(commit)的完整哈希字串
    • %h 提交对象的简短哈希字串
    • %T 树对象(tree)的完整哈希字串
    • %t 树对象的简短哈希字串
    • %P 父对象(parent)的完整哈希字串
    • %p 父对象的简短哈希字串
    • %an 作者(author)的名字
    • %ae 作者的电子邮件地址
    • %ad 作者修订日期(可以用 -date= 选项定制格式)
    • %ar 作者修订日期,按多久以前的方式显示
    • %cn 提交者(committer)的名字
    • %ce 提交者的电子邮件地址
    • %cd 提交日期
    • %cr 提交日期,按多久以前的方式显示
    • %s 提交说明
    • %ai author date, ISO 8601-like format

参考资料

  • git log命令全解析
  • 2.3 Git 基础 - 查看提交历史
  • git log命令全解析
  • git log 常用命令及技巧

相关文章:

【工具类】git log 常用别名,git log 干活,git log常用参数

git log 常用参数及 .gitconfig 配置 git log 常用参数及 .gitconfig 配置 干货&#xff0c;执行下边命令&#xff0c;添加别名git log 参数参考资料 干货&#xff0c;执行下边命令&#xff0c;添加别名 注意&#xff0c;需要将 knowledgebao 修改为自己的名字&#xff0c;…...

[linux] AttributeError: module ‘transformer_engine‘ has no attribute ‘pytorch‘

[BUG] AttributeError: module transformer_engine has no attribute pytorch Issue #696 NVIDIA/Megatron-LM GitHub 其中这个答案并没有解决我的问题&#xff1a; import flash_attn_2_cuda as flash_attn_cuda Traceback (most recent call last): File "<stdi…...

前端面试题---->JavaScript

const声明的对象属性和数组的值可以被修改吗&#xff1f;为什么 原因&#xff1a;当使用const声明一个对象或数组时&#xff0c;实际上是保证了对象或数组的引用不会被修改&#xff0c;但对象或数组本身的属性或元素是可以被修改的。这是因为const只能保证指向的内存地址不变&a…...

spring 的理解

spring 的理解 spring 是一个基础的框架&#xff0c;同时提高了一个Bean 的容器&#xff0c;用来装载Bean对象spring会帮我们创建Bean 对象并维护Bean对象 的生命周期。在spring 框架上&#xff0c;还有springCloud,spring Boot 的技术框架&#xff0c;都是以Spring为基石的sp…...

【Java程序设计】【C00384】基于(JavaWeb)Springboot的民航网上订票系统(有论文)

【C00384】基于&#xff08;JavaWeb&#xff09;Springboot的民航网上订票系统&#xff08;有论文&#xff09; 项目简介项目获取开发环境项目技术运行截图 博主介绍&#xff1a;java高级开发&#xff0c;从事互联网行业六年&#xff0c;已经做了六年的毕业设计程序开发&#x…...

如何查看局域网内所有的ip和对应的mac地址

1、windows下查看 方法一、 按快捷键“winr”打开运行界面&#xff0c;输入“CMD”回车: 输入以下命令&#xff1a; for /L %i IN (1,1,254) DO ping -w 1 -n 1 192.168.0.%i 其中 192.168.0.%i 部分要使用要查询的网段&#xff0c;比如 192.168.1.%i 192.168.137.%i 172.16.2…...

应用层协议 - HTTP

文章目录 目录 文章目录 前言 1 . 应用层概要 2. WWW 2.1 互联网的蓬勃发展 2.2 WWW基本概念 2.3 URI 3 . HTTP 3.1 工作过程 3.2 HTTP协议格式 3.3 HTTP请求 3.3.1 URL基本格式 3.3.2 认识方法 get方法 post方法 其他方法 3.3.2 认识请求报头 3.3.3 认识请…...

mysql安装及操作

一、Mysql 1.1 MySQL数据库介绍 1.1.1 什么是数据库DB&#xff1f; DB的全称是database&#xff0c;即数据库的意思。数据库实际上就是一个文件集合&#xff0c;是一个存储数据的仓库&#xff0c;数据库是按照特定的格式把数据存储起来&#xff0c;用户可以对存储的数据进行…...

【计算机操作系统】深入探究CPU,PCB和进程工作原理

˃͈꒵˂͈꒱ write in front ꒰˃͈꒵˂͈꒱ ʕ̯•͡˔•̯᷅ʔ大家好&#xff0c;我是xiaoxie.希望你看完之后,有不足之处请多多谅解&#xff0c;让我们一起共同进步૮₍❀ᴗ͈ . ᴗ͈ აxiaoxieʕ̯•͡˔•̯᷅ʔ—CSDN博客 本文由xiaoxieʕ̯•͡˔•̯᷅ʔ 原创 CSDN 如…...

Pillow教程04:学习ImageDraw+Font字体+alpha composite方法,给图片添加文字水印

---------------Pillow教程集合--------------- Python项目18&#xff1a;使用Pillow模块&#xff0c;随机生成4位数的图片验证码 Python教程93&#xff1a;初识Pillow模块&#xff08;创建Image对象查看属性图片的保存与缩放&#xff09; Pillow教程02&#xff1a;图片的裁…...

fastjson2 反序列化包含多层泛型结构的实体类

前言 由于使用到httpUtill来调用接口 工具类的返回是字符串 其中接口的实现返回值是个多层泛型结构的实体类 例如Result<Page<UserDto>> 当使用 JSON.parseObject("res",new TypeReference<Result<Page<UserDto>>>{})发现在page中存在…...

P6学习:解析P6 WBS-工作分解结构的原则

前言 WBS&#xff0c;及Work Breakdown Structure&#xff0c;中文工作分解结构&#xff0c;是总结工作阶段的项目的层次结构分解。 WBS 就像项目的大纲——它将项目分解为特定的可交付成果或阶段。 然后将活动添加到这些层中以创建项目计划的时间表。 WBS 使用流程会有所不…...

C++ empalce_back 和 push_back的区别

在C中&#xff0c;push_back和emplace_back都是向容器&#xff08;如std::vector、std::list等&#xff09;尾部添加元素的成员函数。它们的主要区别在于元素的构造方式和参数传递方式。 push_back函数接受一个已经构造好的元素&#xff0c;并将其复制或移动到容器的尾部。这意…...

java1.8常考面试题

在Java 1.8版本中&#xff0c;引入了很多重要的新特性&#xff0c;这些特性常常成为面试的焦点。下面是一些在面试中常见的关于Java 1.8的问题及其解答&#xff0c;帮助你准备面试&#xff1a; 1. Java 1.8的主要新特性有哪些&#xff1f; Lambda表达式&#xff08;Lambda Ex…...

Java 中的业务是指什么?

在 Java 编程中&#xff0c;业务&#xff08;Business&#xff09;是指软件系统中负责实现特定功能或处理特定任务的一组逻辑和功能。业务通常是指与业务需求直接相关的功能和处理过程&#xff0c;包括数据处理、业务逻辑、交易处理、业务规则等。在软件开发中&#xff0c;业务…...

【MySQL】聊聊自增id用完怎么办?

在实际的开发中&#xff0c;一般都会将数据存储到数据库中&#xff0c;在设计表的时候&#xff0c;其实id如果达到最大值的话&#xff0c;会出现什么问题。其实主要分两种情况&#xff0c;一种是设置了主键id&#xff0c;另一种没有设置主键id。 表定义自增值id create table…...

新能源汽车充电桩主板各模块成本占比解析

汽车充电桩主板是汽车充电桩的重要组件&#xff0c;主要由微处理器模块、通信模块、控制模块、安全保护模块、传感器模块等多个模块构成。深入探究各模块在总成本中的比重&#xff0c;我们可以更好地优化成本结构、提高生产效率&#xff0c;并为未来的技术创新和市场需求变化做…...

【面试经典150 | 动态规划】三角形最小路径和

文章目录 写在前面Tag题目来源解题思路方法一&#xff1a;动态规划 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法&#xff0c;两到三天更新一篇文章&#xff0c;欢迎催更…… 专栏内容以分析题目为主&#xff0c;并附带一些对于本题涉及到的数据结构等内容进行…...

【线段树二分】第十三届蓝桥杯省赛C++ A组/研究生组 Python 研究生组《扫描游戏》(C++)

【题目描述】 有一根围绕原点 O 顺时针旋转的棒 OA&#xff0c;初始时指向正上方&#xff08;Y 轴正向&#xff09;。 在平面中有若干物件&#xff0c;第 i 个物件的坐标为&#xff08;,)&#xff0c;价值为 。 当棒扫到某个物件时&#xff0c;棒的长度会瞬间增长 &#xff…...

类模板与继承及成员、全局函数的实现

一、类模板与继承 当类模板碰到继承时&#xff0c;需要注意一下几点&#xff1a; 1.当子类继承的父类是一个类模板时&#xff0c;子类在声明的时候&#xff0c;要指定出父类中T的类型 2.如果不指定&#xff0c;编译器无法给子类分配内存 3.如果想灵活指定出父类中T的类型&a…...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块&#xff0c;它提供了一个轻量级的 HTTP 服务器实现&#xff0c;主要用于构建基于 HTTP 的应用程序和服务。 功能介绍&#xff1a; 主要功能 HTTP服务器功能&#xff1a; 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

计算机基础知识解析:从应用到架构的全面拆解

目录 前言 1、 计算机的应用领域&#xff1a;无处不在的数字助手 2、 计算机的进化史&#xff1a;从算盘到量子计算 3、计算机的分类&#xff1a;不止 “台式机和笔记本” 4、计算机的组件&#xff1a;硬件与软件的协同 4.1 硬件&#xff1a;五大核心部件 4.2 软件&#…...

Python 实现 Web 静态服务器(HTTP 协议)

目录 一、在本地启动 HTTP 服务器1. Windows 下安装 node.js1&#xff09;下载安装包2&#xff09;配置环境变量3&#xff09;安装镜像4&#xff09;node.js 的常用命令 2. 安装 http-server 服务3. 使用 http-server 开启服务1&#xff09;使用 http-server2&#xff09;详解 …...

解析两阶段提交与三阶段提交的核心差异及MySQL实现方案

引言 在分布式系统的事务处理中&#xff0c;如何保障跨节点数据操作的一致性始终是核心挑战。经典的两阶段提交协议&#xff08;2PC&#xff09;通过准备阶段与提交阶段的协调机制&#xff0c;以同步决策模式确保事务原子性。其改进版本三阶段提交协议&#xff08;3PC&#xf…...

【iOS】 Block再学习

iOS Block再学习 文章目录 iOS Block再学习前言Block的三种类型__ NSGlobalBlock____ NSMallocBlock____ NSStackBlock__小结 Block底层分析Block的结构捕获自由变量捕获全局(静态)变量捕获静态变量__block修饰符forwarding指针 Block的copy时机block作为函数返回值将block赋给…...

C++中vector类型的介绍和使用

文章目录 一、vector 类型的简介1.1 基本介绍1.2 常见用法示例1.3 常见成员函数简表 二、vector 数据的插入2.1 push_back() —— 在尾部插入一个元素2.2 emplace_back() —— 在尾部“就地”构造对象2.3 insert() —— 在任意位置插入一个或多个元素2.4 emplace() —— 在任意…...

使用python进行图像处理—图像滤波(5)

图像滤波是图像处理中最基本和最重要的操作之一。它的目的是在空间域上修改图像的像素值&#xff0c;以达到平滑&#xff08;去噪&#xff09;、锐化、边缘检测等效果。滤波通常通过卷积操作实现。 5.1卷积(Convolution)原理 卷积是滤波的核心。它是一种数学运算&#xff0c;…...

免费批量Markdown转Word工具

免费批量Markdown转Word工具 一款简单易用的批量Markdown文档转换工具&#xff0c;支持将多个Markdown文件一键转换为Word文档。完全免费&#xff0c;无需安装&#xff0c;解压即用&#xff01; 官方网站 访问官方展示页面了解更多信息&#xff1a;http://mutou888.com/pro…...

Unity-ECS详解

今天我们来了解Unity最先进的技术——ECS架构&#xff08;EntityComponentSystem&#xff09;。 Unity官方下有源码&#xff0c;我们下载源码后来学习。 ECS 与OOP&#xff08;Object-Oriented Programming&#xff09;对应&#xff0c;ECS是一种完全不同的编程范式与数据架构…...