Permissions build.sh文件的权限被拒绝

Permissions build.sh文件的权限被拒绝,permissions,travis-ci,Permissions,Travis Ci,看起来您需要签入具有执行权限的文件build.sh。请从您自己的计算机上尝试以下操作: $ ./build.sh --quiet verify /home/travis/build.sh: line 59: ./build.sh: Permission denied. The command "./build.sh --quiet verify" exited with 126. 您可以通过将此行添加到.travis.yml中来授予所需的权限 git update-index --ad

看起来您需要签入具有执行权限的文件
build.sh
。请从您自己的计算机上尝试以下操作:

$ ./build.sh --quiet verify

/home/travis/build.sh: line 59: ./build.sh: Permission denied. 

The command "./build.sh --quiet verify" exited with 126. 

您可以通过将此行添加到.travis.yml中来授予所需的权限

git update-index --add --chmod=+x build.sh
git commit -m 'Make build.sh executable'
git push
使用bash运行脚本 另一个选项是使用bash运行脚本,这将省去修改文件权限的需要

before_install:
  - chmod +x build.sh
或者:

bash path/to/file.sh

注意 在这种情况下,您不是执行脚本本身,而是执行
bash
sh
,然后运行脚本。因此,脚本不需要是可执行的


有意义吗?

只需在build.sh文件所在的路径上运行即可


chmod+x build.sh

您能显示build.sh文件的权限吗?第59行是什么?不知道,因为/home/travis/build.sh文件存在于travis-ci.org中。是否有理由运行bash而不是脚本?有这样或那样的好处吗?这只是一种省去修改文件权限的有用方法。(在我的mac上,我需要sudo来更改文件权限。在travis ci上,你不能总是使用sudo。我需要一种方法来运行我的测试,这两种方法都可以。手动在本地更改文件权限似乎不是最好的方法…@josh我从2007年开始使用git,这是我第一次看到这种解决方案。慢速播放普通的
chmod+xbuild.sh&&git add build.sh有什么问题?@MateenUlhaq即使在使用git bash时也无法在windows上运行。因此,您必须将其添加到git历史记录中,然后调整索引以保存权限。在运行ning
git commit
之前,我运行了git status,它显示的文件与正在跟踪和未跟踪的文件相同。我提交了,很好,但下一次我添加文件时,权限丢失了。哇。来自Windows世界非常有用,但在Azure的Ubuntu上构建.NET内核。
sh path/to/file.sh