Changes between Version 5 and Version 6 of pm-svn-cmds


Ignore:
Timestamp:
Jun 2, 2006 2:22:29 PM (14 years ago)
Author:
andreasw
Comment:

finalize first draft

Legend:

Unmodified
Added
Removed
Modified
  • pm-svn-cmds

    v5 v6  
    7272This command is essentially the same as {{{svn checkout}}}, except that it skips all subversion-internal stuff, and you won't be able to do any further revision management commands in the obtained directories.  This command is used to '''extract files from the repository with the purpose of given the obtained files to someone else''' (e.g., in the form of a tarball).
    7373
    74 == svn proplist (short form: svn plist) ==
     74== Subversion Properties ==
    7575
    76 == svn propget (short form: svn pget) ==
     76To understand the next set of commands you need to know what [http://svnbook.red-bean.com/nightly/en/svn.advanced.props.html Subversion Properties] are.  A subversion property is something associated with a file or a directory.  In principle, you can pick any property name and any content.  However, there are special subversion properties, that tell subversion some details about the file or directory.
    7777
    78 == svn propset (short form: svn pset) ==
     78 * '''svn:executable''': If this property is set (with or without a value), subversion knows that this is an executable file, and will make it executable when you check it out.  Note, when you want to mark a file as an executable file, you simply need to set this property for this file, and subversion will automatically make it executable in your local copy.
     79 * '''svn:eol-style''':  This property should be set to the value '''native''' for any text file.  This way, it will be adapted correctly at a checkout to have the correct line-end bytes (which differ for example between UNIX and Windows systems).
     80 * '''svn:externals''': This is a property that can be set for directories, and it defines [wiki:pm-svn-externals subversion externals].
     81 * '''svn:mime-type''': This property, set for a file, tells subversion the MIME type of the file.
    7982
    80 == svn propdel (short form: svn pdel) ==
     83It is a good idea to change your local subversion configuration to set those properties automatically for certain files, so that the properties are correctly set when you add a file.  For this purpose, '''you should copy the following lines to the end of your {{{$HOME/.subversion/config}}} file''':
    8184
     85{{{
     86[miscellany]
     87enable-auto-props = yes
     88[auto-props]
     89*.c        = svn:eol-style=native;svn:keywords="Author Date Id Revision"
     90*.cpp      = svn:eol-style=native;svn:keywords="Author Date Id Revision"
     91*.h        = svn:eol-style=native;svn:keywords="Author Date Id Revision"
     92*.hpp      = svn:eol-style=native;svn:keywords="Author Date Id Revision"
     93*.f        = svn:eol-style=native;svn:keywords="Author Date Id Revision"
     94*.F        = svn:eol-style=native;svn:keywords="Author Date Id Revision"
     95*.sh       = svn:eol-style=native;svn:executable
     96*.txt      = svn:eol-style=native
     97*.png      = svn:mime-type=image/png
     98*.jpg      = svn:mime-type=image/jpeg
     99*.JPG      = svn:mime-type=image/jpeg
     100*.jpeg     = svn:mime-type=image/jpeg
     101*.JPEG     = svn:mime-type=image/jpeg
     102*.gif      = svn:mime-type=image/gif
     103*.GIF      = svn:mime-type=image/gif
     104*.rtf      = svn:mime-type=application/rtf
     105*.RTF      = svn:mime-type=application/rtf
     106*.pdf      = svn:mime-type=application/pdf
     107*.PDF      = svn:mime-type=application/pdf
     108*.db       = svn:mime-type=application/octet-stream
     109*.ico      = svn:mime-type=application/octet-stream
     110*.mov      = svn:mime-type=video/quicktime
     111*.MOV      = svn:mime-type=video/quicktime
     112*.avi      = svn:mime-type=video/x-msvideo
     113*.AVI      = svn:mime-type=video/x-msvideo
     114*.mpg      = svn:mime-type=video/mpeg
     115*.MPG      = svn:mime-type=video/mpeg
     116*.mpeg     = svn:mime-type=video/mpeg
     117*.MPEG     = svn:mime-type=video/mpeg
     118*.mpe      = svn:mime-type=video/mpeg
     119*.MPE      = svn:mime-type=video/mpeg
     120*.zip      = svn:mime-type=application/zip
     121*.tgz      = svn:mime-type=application/x-gzip
     122*.gz       = svn:mime-type=application/x-gzip
     123*.doc      = svn:mime-type=application/msword
     124*.ppt      = svn:mime-type=application/vnd.ms-powerpoint
     125*.xls      = svn:mime-type=application/vnd.ms-excel
     126*.sxw      = svn:mime-type=application/vnd.sun.xml.
     127*.sxc      = svn:mime-type=application/vnd.sun.xml.writer
     128*.sxd      = svn:mime-type=application/vnd.sun.xml.calc
     129*.sxi      = svn:mime-type=application/vnd.sun.xml.impress
     130*.sxm      = svn:mime-type=application/vnd.sun.xml.math
     131*.mso      = svn:mime-type=application/octet-stream
     132*.wmf      = svn:mime-type=application/octet-stream
     133*.wmz      = svn:mime-type=application/x-gzip
     134*.prz      = svn:mime-type=application/octet-stream
     135Makefile   = svn:eol-style=native;svn:keywords="Author Date Id Revision"
     136Makefile.ac = svn:eol-style=native;svn:keywords="Author Date Id Revision"
     137configure.ac = svn:eol-style=native;svn:keywords="Author Date Id Revision"
     138}}}
     139
     140
     141=== svn proplist (short form: svn plist) ===
     142
     143This command takes as argument the name of a file or directory, and '''lists all properties''' given to this file or directory.  By default, you only see the names of the properties, without their values.  If you want to see also their values, use the "{{{-v}}}" flag.
     144
     145=== svn propget (short form: svn pget) ===
     146
     147This command '''tells you the value for a specific property for a file or directory'''.  As first argument, you need to specify the name of the property (e.g., {{{svn:externals}}}), and as second argument the name of the file or directory.
     148
     149=== svn propset (short form: svn pset) ===
     150
     151With this command you can '''set the value of a specify property for a file or directory'''.  As the first argument, you need to specify the name of the property, then the value of the property (use quotation if this has more than one word), and finally you need to specify the name of the file or directory.  You can also provide the value as the content of a file, say {{{FileName}}}, in which case you omit the value argument, and use the "{{{-F FileName}}}" flag instead.  In COIN, we use this to assign [wiki:pm-svn-externals subversion externals].
     152
     153=== svn propdel (short form: svn pdel) ===
     154
     155Finally, you can '''delete a specific property of a file or directory'''.  As first argument, you specify the name of the property, and then the name of the file or directory.