db-jdo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Jdo Wiki] Update of "SubversionRepository" by MichelleCaisse
Date Thu, 01 Sep 2005 15:27:56 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Jdo Wiki" for change notification.

The following page has been changed by MichelleCaisse:
http://wiki.apache.org/jdo/SubversionRepository

The comment on the change is:
Added section on Windows cygwin subversion and svn:executable property

------------------------------------------------------------------------------
  
  If you do not have a cvs client installed on your system you can download the Net``Beans
mdr btree sources [attachment:netbeans-mdr-btree.zip here]. Unzip the file in the btree directory
and comment out (or remove) the definition of the preGoal java:prepare-filesystem.
  
+ = Using subversion on Windows with cygwin =
+ 
+ If you use subversion on Windows under cygwin, you may find that the subversion client automatically
assigns the executable property to non-executable files. In that case, you would see this
at the bottom of an ''svn diff'' of the file:
+ {{{
+ Property changes on: test/sql/derby/datastoreidentity/schema1.sql
+ ___________________________________________________________________
+ Name: svn:executable
+    + *
+ }}}
+ This section explains the source of the problem and suggests some actions to avoid it.
+ 
+ == Background ==
+ 
+ Subversion carries executable information in the built-in property called svn:executable.
 This property, unlike others,  may be present or absent, but it has no value.  You can add
it or delete it, but but you cannot change its value.
+ 
+ In theory, subversion ignores Windows file permissions and by default does not set svn:executable.
However, cygwin svn acts like Unix svn and determines the svn:executable property based on
file permissions.
+ 
+ If you create a file from the cygwin command line, by default it is executable only if the
filename ends with .bat, .com or .exe, or if its content starts with #!. [This is what the
doc says, but you may see -x for all files.] If you create a file using a Windows tool, by
default its Windows permissions are executable by all. Cygwin interprets the Unix-style permissions
this way as well. If the file is executable by all, cygwin svn sets the svn:executable property
on the file when you invoke ''svn add''.
+ 
+ == Removing existing executable properties from the repository ==
+ 
+ You can use svn propdel to remove the svn:executable property from your working copy.
+ {{{
+     svn propdel -R svn:executable .
+ }}}
+ will recursively remove the svn:executable property from all of the files below the current
directory.  You can use this and commit the files to clean the repository if necessary.
+ 
+ == Preventing subversion from adding unwanted executable properties ==
+ 
+ Windows/cygwin users who don't want to have to think about using ''svn propdel'' or ''chmod''
on each added file can use a non-cygwin version of svn. The Subversion 1.2.3 Win32 binaries,
downloadable from the link at the bottom of http://subversion.tigris.org/project_packages.html,
appear to work well. After installation, add the svn.exe location to your Windows PATH variable.
You must also remove the subversion component from your cygwin installation because when svn
is invoked from a cygwin window, the cygwin version is found even if your cygwin/bin directory
is later on the path.
+ 
+ Alternatively, Windows users can set file permissions in Windows Explorer. (Right-click
on the top-level folder & select Properties. Select the Security tab. Click Advanced.
Remove all instances of Read & Execute from the Permission Entries. Click "Reset permissions
on all child objects and enable propogations of inheritable permissions". Click Apply. OK.
OK.) You will have to do this again when you do a clean checkout to a new directory.
+ 

Mime
View raw message