构建生产脚本

Build for production script

我正在使用 EncloseJS 将我的 javascript 代码转换为可执行二进制文件,但我只想将其投入生产,为此我创建了一个文件 /hooks/build-for-production,其中包含以下内容:

#!/usr/bin/env bash
npm install
gulp build
enclose --loglevel info -o ./executable dist/index.js --config config.js
rm !(executable)

因此,我想确认用户是否要删除除可执行文件之外的所有内容。类似于:

"Do you want remove everything?",如果用户回答为真,则删除所有内容,但如果有未提交的内容,则中止。

这可能吗?如何查看未提交的内容??

此外..我想知道我正在做的事情是否是一个好的做法,如果不是,我该怎么办?

谢谢。

如果有任何变化,您可以使用 git diff --exit-code 其中 return 非零:

echo -n "Do you want remove everything? (y/n)"
read remove
if [[ $(git diff --exit-code) -eq 0 ]];then
  # have no any uncommitted stuff
else
  # have some uncommitted stuff
  if echo "$remove" | grep -iq "^y";then
    echo "Remove all stuff"
  else
    # do other
  fi
fi