Re: undocumented core.sharedRepository=2 set by git init --shared=world

2015-07-07 Thread Torsten Bögershausen
On 2015-07-06 21.25, Joey Hess wrote:
 joey@darkstar:~/tmpgit init --shared=world testrepo
 Initialized empty shared Git repository in /home/joey/tmp/testrepo/.git/
 joey@darkstar:~/tmpgrep shared testrepo/.git/config 
   sharedrepository = 2
 
 This magic value of 2 seems to be undocumented, as is the magic value of 1
 that's equvilant to group.
 
 I think it would be better to have git init put in world or group and not
 these magic values. 
Thanks for the report.
Changing the behavior of Git may cause problems with
- older versions of Git
- Other implementations of Git, like JGit, libgit2, ...

Did you check what these implementations do ?

Anyway, I suppose they ought to be documented too.
 
Yes.
Do you want to send a patch ?

--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: undocumented core.sharedRepository=2 set by git init --shared=world

2015-07-07 Thread John Keeping
On Tue, Jul 07, 2015 at 10:14:28AM +0200, Johannes Schindelin wrote:
 Hi Joey,
 
 On 2015-07-06 21:25, Joey Hess wrote:
  joey@darkstar:~/tmpgit init --shared=world testrepo
  Initialized empty shared Git repository in /home/joey/tmp/testrepo/.git/
  joey@darkstar:~/tmpgrep shared testrepo/.git/config 
  sharedrepository = 2
  
  This magic value of 2 seems to be undocumented, as is the magic value of 1
  that's equvilant to group.
  
  I think it would be better to have git init put in world or group and 
  not
  these magic values. Anyway, I suppose they ought to be documented too.
 
 The rationale can be found here:
 https://github.com/git/git/blob/v2.4.5/builtin/init-db.c#L413-L418
 
   /* We do not spell group and such, so that
* the configuration can be read by older version
* of git. Note, we use octal numbers for new share modes,
* and compatibility values for PERM_GROUP and
* PERM_EVERYBODY.
*/
 
 I am sympathetic to your wish, of course, and I am sure that you
 understand why we cannot simply break other people's setups to satisfy
 it.

That comment was added in 94df250 (shared repository: optionally allow
reading to others., 2006-06-09) which was in 1.4.1.  I suspect that is
now sufficiently old that it no longer matters.
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: undocumented core.sharedRepository=2 set by git init --shared=world

2015-07-07 Thread Johannes Schindelin
Hi Joey,

On 2015-07-06 21:25, Joey Hess wrote:
 joey@darkstar:~/tmpgit init --shared=world testrepo
 Initialized empty shared Git repository in /home/joey/tmp/testrepo/.git/
 joey@darkstar:~/tmpgrep shared testrepo/.git/config 
   sharedrepository = 2
 
 This magic value of 2 seems to be undocumented, as is the magic value of 1
 that's equvilant to group.
 
 I think it would be better to have git init put in world or group and not
 these magic values. Anyway, I suppose they ought to be documented too.

The rationale can be found here: 
https://github.com/git/git/blob/v2.4.5/builtin/init-db.c#L413-L418

/* We do not spell group and such, so that
 * the configuration can be read by older version
 * of git. Note, we use octal numbers for new share modes,
 * and compatibility values for PERM_GROUP and
 * PERM_EVERYBODY.
 */

I am sympathetic to your wish, of course, and I am sure that you understand why 
we cannot simply break other people's setups to satisfy it.

Ciao,
Johannes
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: undocumented core.sharedRepository=2 set by git init --shared=world

2015-07-07 Thread John Keeping
On Tue, Jul 07, 2015 at 01:32:13PM +0200, Johannes Schindelin wrote:
 Hi John,
 
 On 2015-07-07 11:10, John Keeping wrote:
  On Tue, Jul 07, 2015 at 10:14:28AM +0200, Johannes Schindelin wrote:
  Hi Joey,
 
  On 2015-07-06 21:25, Joey Hess wrote:
   joey@darkstar:~/tmpgit init --shared=world testrepo
   Initialized empty shared Git repository in /home/joey/tmp/testrepo/.git/
   joey@darkstar:~/tmpgrep shared testrepo/.git/config
sharedrepository = 2
  
   This magic value of 2 seems to be undocumented, as is the magic value of 
   1
   that's equvilant to group.
  
   I think it would be better to have git init put in world or group 
   and not
   these magic values. Anyway, I suppose they ought to be documented too.
 
  The rationale can be found here:
  https://github.com/git/git/blob/v2.4.5/builtin/init-db.c#L413-L418
 
 /* We do not spell group and such, so that
  * the configuration can be read by older version
  * of git. Note, we use octal numbers for new share modes,
  * and compatibility values for PERM_GROUP and
  * PERM_EVERYBODY.
  */
 
  I am sympathetic to your wish, of course, and I am sure that you
  understand why we cannot simply break other people's setups to satisfy
  it.
  
  That comment was added in 94df250 (shared repository: optionally allow
  reading to others., 2006-06-09) which was in 1.4.1.  I suspect that is
  now sufficiently old that it no longer matters.
 
 I understand your point of view. With my maintainer hat on I have to
 say, though, that things like that require a major version change.
 Users tend to appreciate such a careful maintenance.

However, there has been a major version since the new syntax was
introduced (in the same commit mentioned above), so this only affects
users who initialize a repository with (say) 2.6.0 or later and then try
to use 1.4.0 or earlier to operate on it.

That means using two versions of Git released more than 9 years apart to
operate on the same repository.  IMHO even careful maintenance can
declare that an unsupported configuration.
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: undocumented core.sharedRepository=2 set by git init --shared=world

2015-07-07 Thread Johannes Schindelin
Hi John,

On 2015-07-07 11:10, John Keeping wrote:
 On Tue, Jul 07, 2015 at 10:14:28AM +0200, Johannes Schindelin wrote:
 Hi Joey,

 On 2015-07-06 21:25, Joey Hess wrote:
  joey@darkstar:~/tmpgit init --shared=world testrepo
  Initialized empty shared Git repository in /home/joey/tmp/testrepo/.git/
  joey@darkstar:~/tmpgrep shared testrepo/.git/config
 sharedrepository = 2
 
  This magic value of 2 seems to be undocumented, as is the magic value of 1
  that's equvilant to group.
 
  I think it would be better to have git init put in world or group and 
  not
  these magic values. Anyway, I suppose they ought to be documented too.

 The rationale can be found here:
 https://github.com/git/git/blob/v2.4.5/builtin/init-db.c#L413-L418

  /* We do not spell group and such, so that
   * the configuration can be read by older version
   * of git. Note, we use octal numbers for new share modes,
   * and compatibility values for PERM_GROUP and
   * PERM_EVERYBODY.
   */

 I am sympathetic to your wish, of course, and I am sure that you
 understand why we cannot simply break other people's setups to satisfy
 it.
 
 That comment was added in 94df250 (shared repository: optionally allow
 reading to others., 2006-06-09) which was in 1.4.1.  I suspect that is
 now sufficiently old that it no longer matters.

I understand your point of view. With my maintainer hat on I have to say, 
though, that things like that require a major version change. Users tend to 
appreciate such a careful maintenance.

Ciao,
Johannes
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


undocumented core.sharedRepository=2 set by git init --shared=world

2015-07-06 Thread Joey Hess
joey@darkstar:~/tmpgit init --shared=world testrepo
Initialized empty shared Git repository in /home/joey/tmp/testrepo/.git/
joey@darkstar:~/tmpgrep shared testrepo/.git/config 
sharedrepository = 2

This magic value of 2 seems to be undocumented, as is the magic value of 1
that's equvilant to group.

I think it would be better to have git init put in world or group and not
these magic values. Anyway, I suppose they ought to be documented too.

-- 
see shy jo


signature.asc
Description: Digital signature