它被认为是一种不好的做法 - 将.git/hooks放入项目存储库(例如,使用符号链接).如果是的话,为不同的git用户提供相同的钩子的最佳方法是什么?
我需要一些Bash脚本的帮助,它会自动将git的分支名称添加为提交消息中的哈希.
我们在项目中使用自定义编写的Git钩子.
挂钩存储在项目的存储库中,当它们发生更改时,为了获得新版本,每个用户必须在其.git/hooks目录中手动复制它们.这很不方便.
改善这种情况的一种方法是将.git/hooks符号链接到worktree.但这意味着每个分支(甚至用户的本地功能分支正在开发中)应该具有最新版本的钩子.这也不方便.
你会如何解决这个问题?
我正在尝试添加pre-commit脚本。
该脚本有效,但 git 忽略了对文件的更改,似乎 git 忽略了我.git在.gitignore.
例如:
# add a hook that runs hello world
echo "#\!/bin/sh \n echo 'hello world'" > .git/hooks/pre-commit
# make the hook runnable
chmod +x .git/hooks/pre-commit
# check changes
git status
# > Your branch is up to date with 'origin/master'.
# > nothing to commit, working tree clean
Run Code Online (Sandbox Code Playgroud)
因此,我如何将钩子提交到存储库?