开发者

How to preserve the file permission in git?

I encountered a problem which开发者_如何学Go took me a long time to find a solution and still fail to get one.

The problem I had is 'DatabaseError: 'attempt to write a readonly database' when I tried to deploy my website through git to a Django hosting.

It seems like git will change the permission of my files, from 777 to 755. But whenever I commit my project, this change will persist. However, I still need to write something into my database (sqlite database).

Does anyone have a suggestion to configure my git to preserve the permission mode at each commit?


In short, you can't.

In longer, there are projects like etckeeper which can do it automatically, or you can write a small hook script which will fix up the permissions (which is probably how I'd do it).

For example, if you commit something this:

#!/bin/sh
chmod -R XXX file_or_directory/

To, eg, scripts/fix_permissions/, then run it as a post-receive hook by simlinking it into .git/hooks/post-receive on the server.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜