Re: [PATCH 1/4] fsmonitor: Watch, and ask about, the top of the repo, not the CWD

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Alex,

On Thu, 19 Oct 2017, Alex Vandiver wrote:

> Signed-off-by: Alex Vandiver <alexmv@xxxxxxxxxxx>
> ---
>  t/t7519/fsmonitor-watchman                 | 3 ++-
>  templates/hooks--fsmonitor-watchman.sample | 3 ++-
>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/t/t7519/fsmonitor-watchman b/t/t7519/fsmonitor-watchman
> index a3e30bf54..377edc7be 100755
> --- a/t/t7519/fsmonitor-watchman
> +++ b/t/t7519/fsmonitor-watchman
> @@ -41,7 +41,8 @@ if ($system =~ m/^MSYS_NT/ || $system =~ m/^MINGW/) {
>  	$git_work_tree =~ s/[\r\n]+//g;
>  	$git_work_tree =~ s,\\,/,g;
>  } else {
> -	$git_work_tree = $ENV{'PWD'};
> +	$git_work_tree = `git rev-parse --show-toplevel`;
> +	chomp $git_work_tree;

This is super expensive, as it means a full-blown new process instead of
just a simple environment variable expansion.

The idea behind using `PWD` instead was that Git will already have done
all of the work of figuring out the top-level directory and switched to
there before calling the fsmonitor hook.

Did you see any case where the script was *not* called from the top-level
directory?

Ciao,
Johannes



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux