onedriver
onedriver copied to clipboard
git hooks permissions
Summary;
- git repositories need +x permissions on all files in
.git/hooks
in order to push. - permissions are not maintained in Onedrive
- so must run
chmod +x ./.git/hooks/*
per session - any ideas for a more stable solution?
I have a repository located in onedrive. The files all synchronize perfectly with Onedriver. However there is a problem whenever pushing or triggering any kind of git hooks.
For example, when attempting to push, I get this error:
$ git push
fatal: cannot exec '.git/hooks/pre-push': Permission denied
The solution I've found is to run chmod +x ./.git/hooks/*
from the project directory. The changes apply for the duration of the session, but must be repeated in a new session.
Can anyone think of a more stable solution?
As you've found out, the issue is that file permissions are not persistent, because OneDrive doesn't have a concept of file permissions where we could store them. It would be nice if we could somehow make permissions persistent somehow. One possible solution would be making everything executable by default, but there might be a more elegant way to do this (I'll have to think on this).