如何解决TortoiseGit 预提交钩子shell 脚本
我实现了 git pre-commit 钩子(shell 脚本)并且它们在 Linux 环境中运行良好,我尝试在 TortoiseGit 中实现相同的 shell 脚本预提交钩子但没有发生任何事情,因为 windows 不支持 shell 脚本所以试图更改shebang行以引用git的shell.exe仍然没有运气,有没有人知道如何在TortoiseGit中实现预提交(shell脚本)钩子?
解决方法
TortoiseGit 带有自己的钩子,因为在执行 git.exe 钩子时并不总是可以控制。
见https://tortoisegit.org/docs/tortoisegit/tgit-dug-settings.html#tgit-dug-settings-hooks
TortoiseGit 还允许您将钩子存储在存储库中(当然,在这里您需要考虑安全方面)。
Windows 版 Git 带有可靠的 *nix 环境。因此,shell 脚本应该可以正常工作(无需修改 *nix)。
如果您想调试普通 Git 挂钩,请从命令行调用 list_strings = ["A-C-TG--","ATCGTAGC","ATGCGATC","ATGCGGTC"]
positions = [i for i,letter in enumerate(list_strings[0]) if letter == "-"]
new_list_strings = []
for string in list_strings:
new_str = ""
for idx,char in string:
if idx not in positions:
new_str += char
new_list_strings.append(new_str)
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。