我花了很多时间在stackoverflow / google上试图找出解决这个问题的方法。可能解决方案很简单,我遗漏了一些东西。
所以我有一个预提交钩子(shell脚本),它对提交的文件运行很少的测试。如果提交的文件未通过测试,则会从舞台中删除。我想从脚本中打印出所有未说明的文件。这是我迄今为止在脚本中尝试过的内容。
- git diff --name-only --diff-filter = M
- git ls-files -m
- git diff --name-only
醇>
所有这些都抛出相同的错误,如下所示:
致命:此操作必须在工作树中运行
P.S。我正在运行这个.git文件夹(因为钩子驻留在那里),因此错误。
任何建议都会非常有用。
答案 0 :(得分:0)
我问过我的一位同事,他提出了专门针对shell脚本的解决方案。有时你只需要思考简单!
只需使用" cd "更改目录并在 .git 文件夹之外运行命令。