Sometimes you want to have a more detailed information about a file/directory than just the icon overlay. You can get all the information Subversion provides in the explorer properties dialog. Just select the file or directory and select → in the context menu (note: this is the normal properties menu entry the explorer provides, not in the TortoiseSVN submenu!). In the properties dialog box TortoiseSVN has added a new property page for files/folders under Subversion control.
On the Subversion page you can see all relevant
information about the selected file/directory. In
addition you can read and set the Subversion properties.
You can add your own properties, or some properties with a
special meaning in Subversion. These begin with svn:.
svn:externals is such a property; see how to handle
externals in the section called “Referenced Projects”.
For more information about properties in Subversion see the
Subversion Manual
.
To set a property, select the required property name from the combo box, then type in a value in the field below. Properties which take multiple values, such as an ignore list, can be entered on multiple lines. Click on to add that property to the list.
If you want to apply a property to many items at once, select the files/folders in explorer, then select →
If you want to apply the property to every file and folder in the hierarchy below the current folder, check the Recursive checkbox.
Some properties, for example svn:needs-lock,
can only be applied to files, so the property name doesn't appear
in the drop down list for folders. You can still apply such a
property recursively to all files in a hierarchy, but you have
to type in the property name yourself.
If you wish to edit an existing property, first select that property from the list of existing properties, so that it appears in the edit area. Then procede as for a new property.
If you wish to remove an existing property, select that property from the list of existing properties, so that it appears in the edit area. Then click on .
The svn:externals property can be used to
pull in other projects from the same repository or a completely
different repository. For more information, read
the section called “Referenced Projects”.
TortoiseSVN has a few special properties of its own, and these begin
with tsvn:.
tsvn:logminsize
sets the minimum length of a log message for a commit.
If you enter a shorter message than specified here, the commit
is disabled. This feature is very useful for reminding you to
supply a proper descriptive message for every commit.
If this property is not set,
or the value is zero, empty log messages are allowed.
tsvn:lockmsgminsize
sets the minimum length of a lock message.
If you enter a shorter message than specified here, the lock
is disabled. This feature is very useful for reminding you to
supply a proper descriptive message for every lock you get.
If this property is not set,
or the value is zero, empty lock messages are allowed.
tsvn:logwidthmarker is used with projects which
require log messages to be formatted with some maximum width
(typically 80 characters) before a line break. Setting this
property to a non-zero will do 2 things in the log message
entry dialog: it places a marker to indicate the maximum width,
and it disables word wrap in the display, so that you can see
whether the text you entered is too long. Note: this feature
will only work correctly if you have a fixed-width font
selected for log messages.
tsvn:logtemplate is used with projects which
have rules about log message formatting. The property holds
a multi-line text string which will be inserted in the commit
message box when you start a commit. You can then edit it to
include the required information. Note: if you are also using
tsvn:logminsize, be sure to set the length
longer than the template or you will lose the protection mechanism.
In the Commit dialog you have the option to paste in the
list of changed files, including the status of each file
(added, modified, etc).
tsvn:logfilelistenglish defines whether
the file status is inserted in english or in the localized
language. If the property is not set, the default is
true.
TortoiseSVN can use spell checker modules which are also
used by OpenOffice and Mozilla. If you have those installed
this property will determine which spell checker to use, i.e.
in which language the log messages for your project should
be written.
tsvn:projectlanguage sets the language
module the spell checking engine should use when you enter
a log message. You can find the values for your language
on this page:
MSDN: Language Identifiers
.
You can enter this value in decimal, or in hexadecimal if
prefixed with 0x.
For example English (US) can be entered as
0x0409 or 1033.
Some tsvn: properties require a
true/false value. TSVN also understands
yes as a synonym for true and
no as a synonym for false.
These tsvn: properties must be set on
folders for the system to work.
When you commit a file or folder the properties are read from that folder.
If the properties are not found there, TortoiseSVN will search upwards
through the folder tree to find them until it comes to an unversioned
folder, or the tree root (eg. C:\) is found.
If you can be sure that each user checks out only from e.g
trunk/ and not some subfolder, then it is
sufficient to set the properties on trunk/.
If you can't be sure, you should set the properties recursively on each subfolder.
A property setting deeper in the project hierarchy overrides settings on
higher levels (closer to trunk/).
For tsvn: properties only
you can use the Recursive checkbox to set
the property to all subfolders in the hierarchy, without also
setting it on all files.
Subversion properties are versioned. After you change or add a property you have to commit your changes.
If there's a conflict on committing the changes, because another
user has changed the same property, Subversion generates a
.prej file. Delete this file after you
have resolved the conflict.
You can configure Subversion to set properties automatically on files and folders when they are added to the repository. Read the section called “TortoiseSVN's Settings” for further information.
TortoiseSVN can integrate with some bugtracking
tools. This uses properties, which start with bugtraq:.
Read the section called “Integration with Bugtracking Systems / Issue trackers” for further information.