Hello Alexander,
On Mon, 8 Aug 2011 12:39:41 +0200 Alexander Sack asac@linaro.org wrote:
ok spads from IS gave better suggestion than using umask in .bashrc. Now, we propose that you set alias for git like:
alias git='UMASK=002 git'
I understand the logic here - set umask only for git, but would that really work? I kinda get used that aliases are interactive session thing, and man reads:
Aliases are not expanded when the shell is not interactive, unless the expand_aliases shell option is set using shopt (see the description of shopt under SHELL BUILTIN COMMANDS below).
I'm not sure how exactly git over ssh works though.
And whatever way of umask setting should be, did IS consider implementing it via global /etc/profile or via profile templates clones by adduser or similar tool, to alleviate that burden for the users?
Please update accordingly. Thanks!
On Mon, Aug 8, 2011 at 11:51 AM, Alexander Sack asac@linaro.org wrote:
this should be fixed now. folks, please use:
umask 002
in your .bashrc -> ssh git.linaro.org -> change .bashrc there.
I guess from now on we could consider to use gerrit for toolchain etc. too.
Thanks!
On Sun, Aug 7, 2011 at 8:16 PM, James Westby james.westby@linaro.org wrote:
On Sun, 7 Aug 2011 02:25:17 +0100, Zach Pfeffer zach.pfeffer@linaro.org wrote:
I'm seeing the same thing:
$git push linaro HEAD Counting objects: 5, done. Delta compression using up to 4 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 454 bytes, done. Total 3 (delta 1), reused 0 (delta 0) error: insufficient permission for adding an object to repository database ./objects
fatal: failed to write object error: unpack failed: unpack-objects abnormal exit To ssh://pfefferz@git.linaro.org/srv/git.linaro.org/git/android/toolchain/manifest.git ! [remote rejected] HEAD -> toolchain-11.07-release (n/a (unpacker error)) error: failed to push some refs to 'ssh://pfefferz@git.linaro.org/srv/git.linaro.org/git/android/toolchain/manifest.git'
Any ideas Paul?
The issue is that someone is pushing to these trees with a UMASK that prevents others in the group from writing some files to them. If you are pushing something that contains an object that needs to go in a dir created by someone pushing with a restrictive UMASK you will see this.
You can file an RT ticket to get a chmod -R g+w on these trees.
Please also make sure that if you are pushing to git.linaro.org you set your UMASK on that system to allow group write on files/dirs that you create.
Thanks,
James
--
- Alexander