如何在 git 挂钩中获取当前项目目录?
How do I get current project directory inside a git hook?
我的 flutter 项目目录中有一个预提交挂钩 运行。
#!/bin/sh
cd D: || exit
cd AndroidProjects/json_test/ || exit
flutter pub run
具体如下。我在项目目录的本地终端中 运行 git 命令(git 提交),所以 D:AndroidProjects/json_test/> git commit
然后执行挂钩。
有没有办法让我 运行 git 提交项目路径,直接挂钩,而不用在里面硬编码?
正如the githooks documentation所说:
Before Git invokes a hook, it changes its working directory to either
$GIT_DIR
in a bare repository or the root of the working tree in a
non-bare repository.
(阅读链接文档以了解例外情况。)
因此,您可以检查当前工作目录以找到工作树的顶层,假设是非裸存储库。
我的 flutter 项目目录中有一个预提交挂钩 运行。
#!/bin/sh
cd D: || exit
cd AndroidProjects/json_test/ || exit
flutter pub run
具体如下。我在项目目录的本地终端中 运行 git 命令(git 提交),所以 D:AndroidProjects/json_test/> git commit
然后执行挂钩。
有没有办法让我 运行 git 提交项目路径,直接挂钩,而不用在里面硬编码?
正如the githooks documentation所说:
Before Git invokes a hook, it changes its working directory to either
$GIT_DIR
in a bare repository or the root of the working tree in a non-bare repository.
(阅读链接文档以了解例外情况。)
因此,您可以检查当前工作目录以找到工作树的顶层,假设是非裸存储库。