Problems cloning projects with Cygwin's Git

回眸只為那壹抹淺笑 提交于 2019-12-22 10:18:27

问题


When I try to clone projects using Cygwin's Git 2.7.0 I'm having some issues related to permissions. This is, every time I try running one of the cloned project's executables I'm getting the next error:

Windows cannot access the specified device, path, or file. You may not have the appropriate permissions to access the item.

If I instead use Cygwin's Git, the one included in Attlasian SourceTree, projects will be cloned "properly", and I won't be getting any issue. Below I list both Git's global configurations:

Cygwin's Git (2.7.0):

user.email=foo@foo.com
user.name=foo
alias.default=!git add -A && git commit -m 'default commit'
core.filemode=false
core.autocrlf=true

SourceTree's Git (Git version 1.9.5.msysgit.0):

user.name=foo
user.email=foo@foo.com
core.autocrlf=true
core.filemode=false

How can I configure Cygwin's Git (or other stuff) properly to avoid having such permissions issues?


回答1:


That reminds me of Alexpux/MSYS2-packages issue 222:

On Linux if you want to execute a file it must have the correct permissions. By default a touched file will not have this, for security reasons.

However Windows has a wrong-headed take on this, in that a file created with New > Text Document automatically has execute permissions.

So what looks to have happened in this case is that whoever created the batch files did so in a MSYS2 environment, hence the correct lack of execute permissions.
What they did not do is chmod +x to correctly give these files execute permission, as would have been done if the files were created with Windows native tools.

So a simple chmod +x should be enough.

And then, with Git 2.9.1 or more:

git add --chmod=+x -- afile


来源:https://stackoverflow.com/questions/38746110/problems-cloning-projects-with-cygwins-git

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!