gpt4 book ai didi

Git:如何在预提交 Hook 中重新暂存暂存文件

转载 作者:太空狗 更新时间:2023-10-29 12:45:00 26 4
gpt4 key购买 nike

我正在编写一个 git 预提交 Hook 。
该脚本可以重新格式化一些代码,因此它可以修改暂存文件。

如何重新暂存所有已暂存的文件?

最佳答案

如果没有 pre-commit hook 上下文,您可以 get a list of the staged files使用以下命令:

git diff --name-only --cached

所以如果你想重新索引暂存的文件,你可以使用:

git diff --name-only --cached | xargs -l git add

pre-commit hook上下文中,你应该遵循the advices of David Winterbottom并在其他任何事情之前存储未暂存的更改。

此技术使您不必担心索引或更改未暂存的更改。所以你不必暂存所有已暂存的文件,而是所有已更新的文件:

# Stash unstaged changes
git stash -q --keep-index

# Edit your project files here
...

# Stage updated files
git add -u

# Re-apply original unstaged changes
git stash pop -q

关于Git:如何在预提交 Hook 中重新暂存暂存文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26886363/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com