git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] core.filemode may need manual action
@ 2014-10-16 19:29 Torsten Bögershausen
  2014-10-16 19:40 ` Thomas Braun
  2014-10-16 20:12 ` Junio C Hamano
  0 siblings, 2 replies; 4+ messages in thread
From: Torsten Bögershausen @ 2014-10-16 19:29 UTC (permalink / raw)
  To: git; +Cc: tboegi

core.filemode is set automatically when a repo is created.
But when a repo is exported via CIFS or cygwin is mixed with Git for Windows
core.filemode may better be set manually to false.
Update and improve the documentation.

Helped-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Torsten Bögershausen <tboegi@web.de>
---

Does this reflect the discussion via email ?
Or is more tweaking needed ?


 Documentation/config.txt | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

diff --git a/Documentation/config.txt b/Documentation/config.txt
index 4333636..b4fea43 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -204,8 +204,23 @@ advice.*::
 --
 
 core.fileMode::
-	If false, the executable bit differences between the index and
-	the working tree are ignored; useful on broken filesystems like FAT.
+	Tells Git if the executable bit of files in the working tree
+	is to be honored.
+
+	Some filesystems lose the executable bit when a file that is
+	marked as executable is checked out, or checks out an
+	non-executable file with executable bit on.  "git init" and
+	"git clone" probe the filesystem to see if it records
+	executable bit correctly when they create a new repository
+	and this variable is automatically set as necessary.
+
+	A repository, however, may be on a filesystem that records
+	the filemode correctly, and this variable is set to 'true'
+	when created, but later may be made accessible from another
+	environment that loses the filemode (e.g. exporting ext4 via
+	CIFS mount, visiting a Cygwin managed repository with
+	MsysGit).  In such a case, it may be necessary to set this
+	variable to 'false'.
 	See linkgit:git-update-index[1].
 +
 The default is true, except linkgit:git-clone[1] or linkgit:git-init[1]
-- 
2.0.0.GIT

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] core.filemode may need manual action
  2014-10-16 19:29 [PATCH] core.filemode may need manual action Torsten Bögershausen
@ 2014-10-16 19:40 ` Thomas Braun
  2014-10-16 19:47   ` Johannes Schindelin
  2014-10-16 20:12 ` Junio C Hamano
  1 sibling, 1 reply; 4+ messages in thread
From: Thomas Braun @ 2014-10-16 19:40 UTC (permalink / raw)
  To: Torsten Bögershausen, git; +Cc: git-win-sdk, msysGit

Am 16.10.2014 um 21:29 schrieb Torsten Bögershausen:
> core.filemode is set automatically when a repo is created.
> But when a repo is exported via CIFS or cygwin is mixed with Git for Windows
> core.filemode may better be set manually to false.
> Update and improve the documentation.
> 
> Helped-by: Junio C Hamano <gitster@pobox.com>
> Signed-off-by: Torsten Bögershausen <tboegi@web.de>
> ---
> 
> Does this reflect the discussion via email ?
> Or is more tweaking needed ?
> 
> 
>  Documentation/config.txt | 19 +++++++++++++++++--
>  1 file changed, 17 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/config.txt b/Documentation/config.txt
> index 4333636..b4fea43 100644
> --- a/Documentation/config.txt
> +++ b/Documentation/config.txt
> @@ -204,8 +204,23 @@ advice.*::
>  --
>  
>  core.fileMode::
> -	If false, the executable bit differences between the index and
> -	the working tree are ignored; useful on broken filesystems like FAT.
> +	Tells Git if the executable bit of files in the working tree
> +	is to be honored.
> +
> +	Some filesystems lose the executable bit when a file that is
> +	marked as executable is checked out, or checks out an
> +	non-executable file with executable bit on.  "git init" and
> +	"git clone" probe the filesystem to see if it records
> +	executable bit correctly when they create a new repository
> +	and this variable is automatically set as necessary.
> +
> +	A repository, however, may be on a filesystem that records
> +	the filemode correctly, and this variable is set to 'true'
> +	when created, but later may be made accessible from another
> +	environment that loses the filemode (e.g. exporting ext4 via
> +	CIFS mount, visiting a Cygwin managed repository with
> +	MsysGit).  In such a case, it may be necessary to set this
> +	variable to 'false'.
>  	See linkgit:git-update-index[1].
>  +
>  The default is true, except linkgit:git-clone[1] or linkgit:git-init[1]
> 

[CC'ing msysgit aka git-for-windows/sdk for input]

I'm not really happy with the term MsysGit here.
Would it be too bold to say
[... ] visiting a Cygwin managed repository with Git for Windows.
?

-- 
-- 
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.

You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en

--- 
You received this message because you are subscribed to the Google Groups "Git for Windows" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] core.filemode may need manual action
  2014-10-16 19:40 ` Thomas Braun
@ 2014-10-16 19:47   ` Johannes Schindelin
  0 siblings, 0 replies; 4+ messages in thread
From: Johannes Schindelin @ 2014-10-16 19:47 UTC (permalink / raw)
  To: Thomas Braun; +Cc: Torsten Bögershausen, git, git-win-sdk, msysGit

Hi,

On Thu, 16 Oct 2014, Thomas Braun wrote:

> Am 16.10.2014 um 21:29 schrieb Torsten Bögershausen:
> > core.filemode is set automatically when a repo is created.
> > But when a repo is exported via CIFS or cygwin is mixed with Git for Windows
> > core.filemode may better be set manually to false.
> > Update and improve the documentation.
> > 
> > Helped-by: Junio C Hamano <gitster@pobox.com>
> > Signed-off-by: Torsten Bögershausen <tboegi@web.de>
> > ---
> > 
> > Does this reflect the discussion via email ?
> > Or is more tweaking needed ?
> > 
> > 
> >  Documentation/config.txt | 19 +++++++++++++++++--
> >  1 file changed, 17 insertions(+), 2 deletions(-)
> > 
> > diff --git a/Documentation/config.txt b/Documentation/config.txt
> > index 4333636..b4fea43 100644
> > --- a/Documentation/config.txt
> > +++ b/Documentation/config.txt
> > @@ -204,8 +204,23 @@ advice.*::
> >  --
> >  
> >  core.fileMode::
> > -	If false, the executable bit differences between the index and
> > -	the working tree are ignored; useful on broken filesystems like FAT.
> > +	Tells Git if the executable bit of files in the working tree
> > +	is to be honored.
> > +
> > +	Some filesystems lose the executable bit when a file that is
> > +	marked as executable is checked out, or checks out an
> > +	non-executable file with executable bit on.  "git init" and
> > +	"git clone" probe the filesystem to see if it records
> > +	executable bit correctly when they create a new repository
> > +	and this variable is automatically set as necessary.
> > +
> > +	A repository, however, may be on a filesystem that records
> > +	the filemode correctly, and this variable is set to 'true'
> > +	when created, but later may be made accessible from another
> > +	environment that loses the filemode (e.g. exporting ext4 via
> > +	CIFS mount, visiting a Cygwin managed repository with
> > +	MsysGit).  In such a case, it may be necessary to set this
> > +	variable to 'false'.
> >  	See linkgit:git-update-index[1].
> >  +
> >  The default is true, except linkgit:git-clone[1] or linkgit:git-init[1]
> > 
> 
> [CC'ing msysgit aka git-for-windows/sdk for input]
> 
> I'm not really happy with the term MsysGit here.
> Would it be too bold to say
> [... ] visiting a Cygwin managed repository with Git for Windows.
> ?

I agree that msysGit is the wrong term. Not only is it about to be
replaced by the Git for Windows SDK, it is *actively* wrong because
msysGit is just the *development environment* to build Git for Windows.
Most users do *not* need msysGit at all.

Ciao,
Dscho

-- 
-- 
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.

You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en

--- 
You received this message because you are subscribed to the Google Groups "Git for Windows" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] core.filemode may need manual action
  2014-10-16 19:29 [PATCH] core.filemode may need manual action Torsten Bögershausen
  2014-10-16 19:40 ` Thomas Braun
@ 2014-10-16 20:12 ` Junio C Hamano
  1 sibling, 0 replies; 4+ messages in thread
From: Junio C Hamano @ 2014-10-16 20:12 UTC (permalink / raw)
  To: Torsten Bögershausen; +Cc: git

Torsten Bögershausen <tboegi@web.de> writes:

> core.filemode is set automatically when a repo is created.
> But when a repo is exported via CIFS or cygwin is mixed with Git for Windows
> core.filemode may better be set manually to false.
> Update and improve the documentation.
>
> Helped-by: Junio C Hamano <gitster@pobox.com>
> Signed-off-by: Torsten Bögershausen <tboegi@web.de>
> ---
>
> Does this reflect the discussion via email ?
> Or is more tweaking needed ?
>
>
>  Documentation/config.txt | 19 +++++++++++++++++--
>  1 file changed, 17 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/config.txt b/Documentation/config.txt
> index 4333636..b4fea43 100644
> --- a/Documentation/config.txt
> +++ b/Documentation/config.txt
> @@ -204,8 +204,23 @@ advice.*::
>  --
>  
>  core.fileMode::
> -	If false, the executable bit differences between the index and
> -	the working tree are ignored; useful on broken filesystems like FAT.
> +	Tells Git if the executable bit of files in the working tree
> +	is to be honored.
> +
> +	Some filesystems lose the executable bit when a file that is
> +	marked as executable is checked out, or checks out an
> +	non-executable file with executable bit on.  "git init" and
> +	"git clone" probe the filesystem to see if it records
> +	executable bit correctly when they create a new repository
> +	and this variable is automatically set as necessary.
> +
> +	A repository, however, may be on a filesystem that records
> +	the filemode correctly, and this variable is set to 'true'
> +	when created, but later may be made accessible from another
> +	environment that loses the filemode (e.g. exporting ext4 via
> +	CIFS mount, visiting a Cygwin managed repository with
> +	MsysGit).  In such a case, it may be necessary to set this
> +	variable to 'false'.
>  	See linkgit:git-update-index[1].
>  +
>  The default is true, except linkgit:git-clone[1] or linkgit:git-init[1]

I suspect that the above will not format very well.  Hint: what is
the lone "+" line before "The default is true..." doing there?

Aside from "Is MsysGit the old name for Git for Windows"? raised by
others, I think it may be worthwhile to mention Eclipse, as that is
where the original (by the way, it would have been nice if you left
some pointer to the original discussion when saying "the discussion
via email"---it took me a while to recall what you are talking
about) from Hilco Wijbenga was about ([$gmane/257689]).  So, perhaps
s/with MsysGit/with Eclipse or Git for Windows/; or something.

Other than that, I do not see anything wrong in there.  Thanks.

As a separate topic, however, we may want to start thinking about
adding a cheat-sheet on platform-specific bits to our documentation.

The alphabetical listing of configuration variables we see here is a
very good way for people to go from variable names to what they do
(e.g. find a variable defined in configuration file of a neighbour
or be instructed to set a variable by project lead and want to learn
why setting the variable to the value is a good idea), but not a
good way to go in the other direction (e.g. have trouble running Git
on a filesystem that mangles filenames and want to find out if there
already is a way to work it around).

The cheat-sheet could be just a list of configuration and
environment variables e.g. "Those on Windows may want to check into
these settings".


[Reference]

$gmane/257689:

    http://thread.gmane.org/gmane.comp.version-control.git/257558/focus=257689

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-10-16 20:13 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-16 19:29 [PATCH] core.filemode may need manual action Torsten Bögershausen
2014-10-16 19:40 ` Thomas Braun
2014-10-16 19:47   ` Johannes Schindelin
2014-10-16 20:12 ` Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).