Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error on windows commit (hook: line 49: : command not found) #139

Open
FreelancerA13 opened this issue Sep 12, 2018 · 9 comments
Open

Error on windows commit (hook: line 49: : command not found) #139

FreelancerA13 opened this issue Sep 12, 2018 · 9 comments

Comments

@FreelancerA13
Copy link

I'am having trouble using pre-commit, 1.2.2. When i try to commit i have an error
./node_modules/pre-commit/hook: line 49: : command not found

win 8, Intelij Idea 2016 (with integrated git), npm 6.1.0, node v10.6.0

@sarbbottam
Copy link

I just faced the similar issue in our CI system. node is not available in the $PATH, any node command is proxied via another executable, something like cmd node script.js

I am wondering if we could do something like

if [[ $* == *--dry-run* ]]; then
  exit 1
else
  if [[ -z "$BINARY" ]]; then
    exit 1
  fi
  "$BINARY" "$("$BINARY" -e "console.log(require.resolve('pre-commit'))")"
fi

instead of

if [[ $* == *--dry-run* ]]; then
  if [[ -z "$BINARY" ]]; then
    exit 1
  fi
else
  "$BINARY" "$("$BINARY" -e "console.log(require.resolve('pre-commit'))")"
fi

at https://github.com/observing/pre-commit/blob/master/hook?

Please excuse my ignorance, if I am oversimplifying it.

Happy to raise a PR, if this is an accepted solution.

@BeatriceThalo
Copy link

same error, ubuntu 18.04, vs code 1.28.2-1539735992, nvm 0.33.5, node v8.12.0, npm 6.4.1, git 2.19.1, pre-commit 1.2.2

@BeatriceThalo
Copy link

fixed it by editing the file:
.git/hooks/pre-commit

to include the line:
. $HOME/.nvm/nvm.sh

for example:

#!/bin/bash
. $HOME/.nvm/nvm.sh
./node_modules/pre-commit/hook
RESULT=$?
[ $RESULT -ne 0 ] && exit 1
exit 0

@vince1995
Copy link

vince1995 commented Feb 5, 2019

I just solved this problem:

Install nodejs on Windows, then add a .bashrc file in your home (C:/users/YOUR_PROFILE) dir and add PATH=$PATH:/c/Program\ Files/nodejs. That's it.

@3rd-Eden maybe you could add this info to the readme?

@kumarashwin
Copy link

kumarashwin commented May 13, 2019

I was having a similar issue trying to commit within VS Code in Ubuntu 18.04.

Just chiming in so that this helps someone else that end's up searching after having this issue


When using n for your Node Version Management, if you run into this issue, I was able to resolve it by adding PATH=$PATH:$HOME/n/bin to the first line of my .git/hooks/pre-commit file.

It now looks like this:

#!/bin/bash
PATH=$PATH:$HOME/n/bin
./node_modules/pre-commit/hook
RESULT=$?
[ $RESULT -ne 0 ] && exit 1
exit 0

@wll8
Copy link

wll8 commented Nov 10, 2019

The same problem.

@stringang
Copy link

Windows10 git bash setting environment variables can solve the problem.

$ vim ~/.bashrc
# add in .bashrc
PATH=$PATH:/c/Program\ Files\ \(x86\)/nodejs

@bennycode
Copy link

I also had the following issue:

git push origin && git push origin --tags && npm publish

.git/hooks/pre-push: line 8: dirname: command not found
.git/hooks/pre-push: line 8: /husky.sh: No such file or directory

error: failed to push some refs to '[email protected]:bennyn/my-repository.git'

I fixed it by adding "C:\Program Files\Git\cmd" to my %PATH% system variable (Windows 10). My Git version is: 2.24.0.windows.2

image

@ryanmaffey
Copy link

ryanmaffey commented Jul 13, 2021

Had this issue recently and it seemed to be related to using nvm-windows

Fixed this issue by making sure the following were included in the System Variables > Path (the definitions were already present in the User Variables Path):

  • %NVM_HOME%
  • %NVM_SYMLINK%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants