贡献
Ignoring commits when running git blame / 运行git blame 时忽略commits
Git blame
Git blame 是一个 Git 命令,用于显示文件的每一行是谁在何时进行的修改。它可以帮助你确定文件的每一部分是由哪个开发者贡献的,以及贡献的时间和提交信息。通过执行 git blame 命令,你可以逐行查看文件的修改历史,了解每一行的起源和相关信息,有助于代码审查、追溯 bug 以及了解代码演进过程中的贡献者。
在 Git 中,git blame 命令用于逐行地显示指定文件的每一行是由哪个提交引入的。默认情况下,git blame 会考虑所有的提交记录,包括文件中的所有更改。然而,有时候我们希望排除某些提交,例如仅关注代码逻辑变更,而忽略格式调整等次要更改。
为了实现这个目的,可以创建一个名为 .git-blame-ignore-revs 的文件,其中列出了要忽略的提交哈希值(commit hash)。每个提交哈希值占据文件中的一行。这些提交将在运行 git blame 时被忽略,即不会被考虑在内。
接下来,要让 git blame 命令使用 .git-blame-ignore-revs 文件,需要运行以下命令:
git config --local blame.ignoreRevsFile .git-blame-ignore-revs
git config --local blame.ignoreRevsFile .git-blame-ignore-revs
这将在本地 Git 配置中设置 blame.ignoreRevsFile 选项,指向 .git-blame-ignore-revs 文件,从而告诉 git blame 命令使用这个文件来忽略特定的提交。注意,该配置只对当前仓库有效(--local 参数指定)。
通过配置 blame.ignoreRevsFile,你可以灵活地控制 git blame 命令的行为,选择性地排除一些提交以获得更精确的代码溯源信息。
.git-blame-ignore-revs
# chore: enable prettier trailing commas (#11167)
134ce6817984bad0f5fb043481502531fee9b1db
# chore: rename test packages (#11172)
5170e44920458090b8b43ee9cfe5010c25dfe22b
# chore: enable prettier trailing commas (#11167)
134ce6817984bad0f5fb043481502531fee9b1db
# chore: rename test packages (#11172)
5170e44920458090b8b43ee9cfe5010c25dfe22b
Testing Vite against external packages / 使用外部包对 Vite 进行测试
在测试自己对 Vite 进行的本地修改时,你可能希望将其与使用 Vite 构建的其他包进行测试。对于 pnpm,你可以使用 pnpm.overrides 来实现这一点。注意,pnpm.overrides 必须在根目录的 package.json 文件中指定,并且你必须在根 package.json 中将该包列为依赖项
{
"dependencies": {
"vite": "^4.0.0"
},
"pnpm": {
"overrides": {
"vite": "link:../path/to/vite/packages/vite"
}
}
}
{
"dependencies": {
"vite": "^4.0.0"
},
"pnpm": {
"overrides": {
"vite": "link:../path/to/vite/packages/vite"
}
}
}
然后重新运行 pnpm install 来链接该包。
上述配置中,我们在 dependencies 中列出了 vite 的版本要求,并在 pnpm.overrides 中指定了要使用的本地修改版本的路径。link:../path/to/vite/packages/vite 表示将指定路径下的 Vite 包链接到项目中,使得项目使用本地修改版本的 Vite。
通过这样的配置,你可以方便地将自己的修改应用到 Vite 项目中,并进行测试和验证。