I have a bare git repo on a samba share server which my team are able to push to but when I try to push I get the error:
remote: fatal: sha1 file './objects/pack/tmp_pack_<changes-with-every-push>' write error: Operation not supported
error: unpack failed: index-pack abnormal exit
To /run/user/1000/gvfs/smb-share:server=<ip-address>,share=<share>/<directory>/<bare.git>
! [remote rejected] <my-branch> -> <my-remote-branch> (unpacker error)
Here's a list of what I've tried:
- I copied the bare repo from the server to my machine and was able to push to that (The bare.git repository is fine then)
- I made a copy of the bare repo on the server (and added as a second remote) but the same error message appears when I push to it (So something to do with the samba share?)
- I put another copy of the bare repo onto usb, successfully pushed to it and a member of my team was able to pull my branch to his local repo and successfully push to the server via samba from there (So maybe it isn't samba)
- I then created a new branch from stable and was able to push a single text file from there (So git will take a single text file commit but not all from my working branch, but it can't be my commits as my colleague was able to push my branch from his machine)
- I've run gc with both prune and aggressive flags and git fsck returns no problems
- I've reinstalled both the smbclient and git with no success.
The "operation not supported" error makes me think that there's some system call problem on the server end that's making git return the error.
I've not managed to find anyone who has had this problem before. Any ideas?