threads / discuss / 34646

git status resets permissions on index file -- Ubuntu 12.04 64b

Subject: git status resets permissions on index file -- Ubuntu 12.04 64b

## tl;dr

11 messages between Aug 8, 2013 and Aug 9, 2013.

replies: 10people: 6as markdown or json

Justin Collum· Aug 8, 2013, 20:27 UTC · lore

I've run into a strange situation with git lately. It seems that anything I do involving git will alter the permissions on my index file to the point that I can't do anything until I re-add the permissions on the file.

Looks like a bug to me, is it? It does seem like this has started happening since I moved over to 64b Ubuntu.

$ ll .git total 156K ... drwxrwxrwx 2 dev dev 4.0K Jul 23 09:30 hooks -rwxrwxrwx 1 dev dev 17K Aug 8 13:12 index drwxrwxrwx 2 dev dev 4.0K Jul 19 09:31 info ...

$ gs # On branch build-0.3 # Your branch is ahead of 'staging/build-0.3' by 5 commits. # (use "git push" to publish your local commits) # # Untracked files: # (use "git add <file>..." to include in what will be committed) # # scripts/loadMongo.coffee nothing added to commit but untracked files present (use "git add" to track)

$ ll .git total 156K ... drwxrwxrwx 2 dev dev 4.0K Jul 23 09:30 hooks -rw-rw-r-- 1 dev dev 17K Aug 8 13:16 index # <--------------- this line <------------------------------- drwxrwxrwx 2 dev dev 4.0K Jul 19 09:31 info ...

$ git --version git version 1.8.3.4

Ubuntu:
Distributor ID: Ubuntu
Description: Ubuntu 12.04.2 LTS
Release: 12.04
Codename: precise
Stefan Beller· Aug 8, 2013, 21:35 UTC · re: Justin Collum · lore

Re: git status resets permissions on index file -- Ubuntu 12.04 64b

On 08/08/2013 10:27 PM, Justin Collum wrote:
Show 44 quoted lines
> I've run into a strange situation with git lately. It seems that
> anything I do involving git will alter the permissions on my index
> file to the point that I can't do anything until I re-add the
> permissions on the file.
> 
> Looks like a bug to me, is it? It does seem like this has started
> happening since I moved over to 64b Ubuntu.
> 
> $ ll .git
> total 156K
> ...
> drwxrwxrwx   2 dev dev 4.0K Jul 23 09:30 hooks
> -rwxrwxrwx   1 dev dev  17K Aug  8 13:12 index
> drwxrwxrwx   2 dev dev 4.0K Jul 19 09:31 info
> ...
> 
> $ gs
> # On branch build-0.3
> # Your branch is ahead of 'staging/build-0.3' by 5 commits.
> #   (use "git push" to publish your local commits)
> #
> # Untracked files:
> #   (use "git add <file>..." to include in what will be committed)
> #
> # scripts/loadMongo.coffee
> nothing added to commit but untracked files present (use "git add" to track)
> 
> $ ll .git
> total 156K
> ...
> drwxrwxrwx   2 dev dev 4.0K Jul 23 09:30 hooks
> -rw-rw-r--   1 dev dev  17K Aug  8 13:16 index   # <---------------
> this line  <-------------------------------
> drwxrwxrwx   2 dev dev 4.0K Jul 19 09:31 info
> ...
> 
> $ git --version
> git version 1.8.3.4
> 
> Ubuntu:
> Distributor ID: Ubuntu
> Description: Ubuntu 12.04.2 LTS
> Release: 12.04
> Codename: precise

The permissions are set to reading for all and writing for you(r user) and your group. This should be no problem with standard git commands. Before you had the index file executable, why would you need that?

What kind of filesystem do you have? (The output of 'mount' would be interesting)

Also what exactly breaks? ("can't do anything") What commands do not behave as you'd expect?

Stefan
Andrew Ruder· Aug 8, 2013, 22:18 UTC · re: Stefan Beller · lore

Re: git status resets permissions on index file -- Ubuntu 12.04 64b

On Thu, Aug 08, 2013 at 11:35:35PM +0200, Stefan Beller wrote:
Show 9 quoted lines
> On 08/08/2013 10:27 PM, Justin Collum wrote:
> > [...]
> > -rwxrwxrwx   1 dev dev  17K Aug  8 13:12 index
> > [...]
> > -rw-rw-r--   1 dev dev  17K Aug  8 13:16 index   # <---------------
> 
> The permissions are set to reading for all and writing for you(r user)
> and your group. This should be no problem with standard git commands.
> Before you had the index file executable, why would you need that?

I'm about 90% sure the issue he's having is that the write bit for other/world goes away and he is neither the user dev or the group dev and the reason for all the executable bits is that he is regularly running

    chmod -R 777 .

Justin, if this is true, I will tell you that git respects your umask but I just can't bring myself to really suggest someone type umask 000 ever. :(

- Andy
Justin Collum· Aug 8, 2013, 22:33 UTC · re: Andrew Ruder · lore

Re: git status resets permissions on index file -- Ubuntu 12.04 64b

On Thu, Aug 8, 2013 at 3:18 PM, Andrew Ruder <andy@aeruder.net> wrote:
> he is neither the user dev or the group dev
I am both. There's only one user on this machine and he is me.
> he is regularly running  chmod -R 777

Yes, true. I have a program that I use to edit some of these files (not the git files) that likes to screw up permissions. It's a long story. Anyway, I've been running that chmod regularly since well before this git issue started. I'll start using 644 for the chmod and see if that helps.

Andrew Ruder· Aug 8, 2013, 23:00 UTC · re: Justin Collum · lore

Re: git status resets permissions on index file -- Ubuntu 12.04 64b

On Thu, Aug 08, 2013 at 03:33:32PM -0700, Justin Collum wrote:
> On Thu, Aug 8, 2013 at 3:18 PM, Andrew Ruder <andy@aeruder.net> wrote:
> > he is neither the user dev or the group dev
> 
> I am both. There's only one user on this machine and he is me.

If you are running as 'dev', then I'm not sure how the permissions in the modified case would affect git's ability to work with the file. Seems like everything should be working fine... what is the error you get when things stop working?

Kyle J. McKay· Aug 8, 2013, 22:37 UTC · re: Andrew Ruder · lore

Re: git status resets permissions on index file -- Ubuntu 12.04 64b

On Aug 8, 2013, at 15:18, Andrew Ruder wrote:
Show 22 quoted lines
> On Thu, Aug 08, 2013 at 11:35:35PM +0200, Stefan Beller wrote:
>> On 08/08/2013 10:27 PM, Justin Collum wrote:
>>> [...]
>>> -rwxrwxrwx   1 dev dev  17K Aug  8 13:12 index
>>> [...]
>>> -rw-rw-r--   1 dev dev  17K Aug  8 13:16 index   # <---------------
>>
>> The permissions are set to reading for all and writing for you(r  
>> user)
>> and your group. This should be no problem with standard git commands.
>> Before you had the index file executable, why would you need that?
>
> I'm about 90% sure the issue he's having is that the write bit for
> other/world goes away and he is neither the user dev or the group dev
> and the reason for all the executable bits is that he is regularly
> running
>
>    chmod -R 777 .
>
> Justin, if this is true, I will tell you that git respects your umask
> but I just can't bring myself to really suggest someone type umask 000
> ever. :(
Justin,

If you really want a repository that's writable by everyone, why not just do "git config core.sharedRepository 0666" ?

If you just want them to be group-writable you may be happier with "git config core.sharedRepository true" or possibly "git config core.sharedRepository all". The setting is described fully in "git help config".

Justin Collum· Aug 8, 2013, 23:58 UTC · re: Kyle J. McKay · lore

Re: git status resets permissions on index file -- Ubuntu 12.04 64b

doing
     sudo chmod 644 ./.git/index
instead of 777 resulted in the same result a bit later:
    $ gs
    fatal: index file open failed: Permission denied
On Thu, Aug 8, 2013 at 3:37 PM, Kyle J. McKay <mackyle@gmail.com> wrote:
Show 39 quoted lines
> On Aug 8, 2013, at 15:18, Andrew Ruder wrote:
>>
>> On Thu, Aug 08, 2013 at 11:35:35PM +0200, Stefan Beller wrote:
>>>
>>> On 08/08/2013 10:27 PM, Justin Collum wrote:
>>>>
>>>> [...]
>>>> -rwxrwxrwx   1 dev dev  17K Aug  8 13:12 index
>>>> [...]
>>>> -rw-rw-r--   1 dev dev  17K Aug  8 13:16 index   # <---------------
>>>
>>>
>>> The permissions are set to reading for all and writing for you(r user)
>>> and your group. This should be no problem with standard git commands.
>>> Before you had the index file executable, why would you need that?
>>
>>
>> I'm about 90% sure the issue he's having is that the write bit for
>> other/world goes away and he is neither the user dev or the group dev
>> and the reason for all the executable bits is that he is regularly
>> running
>>
>>    chmod -R 777 .
>>
>> Justin, if this is true, I will tell you that git respects your umask
>> but I just can't bring myself to really suggest someone type umask 000
>> ever. :(
>
>
>
> Justin,
>
> If you really want a repository that's writable by everyone, why not just do
> "git config core.sharedRepository 0666" ?
>
> If you just want them to be group-writable you may be happier with "git
> config core.sharedRepository true" or possibly "git config
> core.sharedRepository all".  The setting is described fully in "git help
> config".
Andreas Schwab· Aug 9, 2013, 12:40 UTC · re: Justin Collum · lore

Re: git status resets permissions on index file -- Ubuntu 12.04 64b

Justin Collum <jcollum@gmail.com> writes:
>      sudo chmod 644 ./.git/index

That doesn't make sense. If you are the owner of the file, why do you need sudo???

Andreas.
-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."
Matthieu Moy· Aug 9, 2013, 12:58 UTC · re: Andreas Schwab · lore

Re: git status resets permissions on index file -- Ubuntu 12.04 64b

Andreas Schwab <schwab@linux-m68k.org> writes:
Show 6 quoted lines
> Justin Collum <jcollum@gmail.com> writes:
>
>>      sudo chmod 644 ./.git/index
>
> That doesn't make sense.  If you are the owner of the file, why do you
> need sudo???

I suspect that some over-use of "sudo" resulted in files or directories belonging to root. What does

  find . -user 0
say?

(As a developer, you should never need sudo. You should only need in as an administrator of your machine.)

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/
Justin Collum· Aug 9, 2013, 17:00 UTC · re: Andreas Schwab · lore

Re: git status resets permissions on index file -- Ubuntu 12.04 64b

> That doesn't make sense.  If you are the owner of the file, why do you need sudo???

I've just never seen a chmod command without sudo. I assumed it was needed. Is this relevant to the bug that I'm seeing?

On Fri, Aug 9, 2013 at 5:40 AM, Andreas Schwab <schwab@linux-m68k.org> wrote:
Show 13 quoted lines
> Justin Collum <jcollum@gmail.com> writes:
>
>>      sudo chmod 644 ./.git/index
>
> That doesn't make sense.  If you are the owner of the file, why do you
> need sudo???
>
> Andreas.
>
> --
> Andreas Schwab, schwab@linux-m68k.org
> GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
> "And now for something completely different."
Justin Collum· Aug 9, 2013, 19:29 UTC · re: Justin Collum · lore

Re: git status resets permissions on index file -- Ubuntu 12.04 64b

I've looked into this a bit and I think this is a bug in Webstorm. Webstorm saves files a lot without you actually hitting save, so that's why I didn't put 2 and 2 together. It appears that any file change in Webstorm is screwing up the permissions on git's index -- but only in 64b Ubuntu, it wasn't happening in 32b.

On Fri, Aug 9, 2013 at 10:00 AM, Justin Collum <jcollum@gmail.com> wrote:
Show 19 quoted lines
>> That doesn't make sense.  If you are the owner of the file, why do you need sudo???
>
> I've just never seen a chmod command without sudo. I assumed it was
> needed. Is this relevant to the bug that I'm seeing?
>
> On Fri, Aug 9, 2013 at 5:40 AM, Andreas Schwab <schwab@linux-m68k.org> wrote:
>> Justin Collum <jcollum@gmail.com> writes:
>>
>>>      sudo chmod 644 ./.git/index
>>
>> That doesn't make sense.  If you are the owner of the file, why do you
>> need sudo???
>>
>> Andreas.
>>
>> --
>> Andreas Schwab, schwab@linux-m68k.org
>> GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
>> "And now for something completely different."

← back to recent threads