/usr/share/doc/gnat-gps/html/The-VCS-node.html is in gnat-gps-doc 5.0-6.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 | <html lang="en">
<head>
<title>The VCS node - Using the GNAT Programming Studio</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Using the GNAT Programming Studio">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Describing-a-VCS.html#Describing-a-VCS" title="Describing a VCS">
<link rel="next" href="Associating-actions-to-operations.html#Associating-actions-to-operations" title="Associating actions to operations">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 2002-2010 AdaCore.
This document is free; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This document is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, see `http://www.gnu.org/licenses/'.-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
pre.display { font-family:inherit }
pre.format { font-family:inherit }
pre.smalldisplay { font-family:inherit; font-size:smaller }
pre.smallformat { font-family:inherit; font-size:smaller }
pre.smallexample { font-size:smaller }
pre.smalllisp { font-size:smaller }
span.sc { font-variant:small-caps }
span.roman { font-family:serif; font-weight:normal; }
span.sansserif { font-family:sans-serif; font-weight:normal; }
pre.smallexample {background-color:rgb(240,240,240);
font-family: courier new,courier,fixed;
font-size: 14px;
margin: 0px 40px 0px 40px;
border-width: 1px 2px 2px 1px;
border-top-style: dotted;
border-left-style: dotted;
border-right-style: solid;
border-bottom-style: solid;
border-color: black;}
code {color:black;
font-family: courier new,courier,fixed;
font-size: 14px;}
body {font-family: arial,helvetica,sans-serif;
font-size: 16px;
max-width: 800px;
text-align: justify}
samp {font-family: courier new,courier,fixed;
font-size: 14px}
--></style>
</head>
<body>
<div class="node">
<a name="The-VCS-node"></a>
<p>
Next: <a rel="next" accesskey="n" href="Associating-actions-to-operations.html#Associating-actions-to-operations">Associating actions to operations</a>,
Up: <a rel="up" accesskey="u" href="Describing-a-VCS.html#Describing-a-VCS">Describing a VCS</a>
<hr>
</div>
<h5 class="subsubsection">16.9.2.1 The VCS node</h5>
<p class="noindent">The <code>vcs</code> node is the toplevel node which contains the
description of the general behavior expected from the VCS. It has the
following attributes:
<dl>
<dt><code>name</code><dd>The attribute <code>name</code> indicates the identifier of the VCS. The
casing of this name is important, and the same casing must be used in
the project files.
<br><dt><code>absolute_names</code><dd>The attribute <code>absolute_names</code> indicates the behavior of the
VCS relative to file names, and can take the values <code>TRUE</code> or
<code>FALSE</code>. If it is set to <code>TRUE</code>, it means that all
commands in the VCS will work on absolute file names. If it set to
<code>FALSE</code>, it means that all actions work on base file names, and
that GPS will move to the appropriate directory before executing an
action.
<br><dt><code>group_queries_by_directory</code><dd>The attribute <code>group_queries_by_directory</code> indicates that, when querying
status for all the source files in a directory, a query for the directory
should be launched, instead of launching a query for multiple files.
This operation is faster on some Version Control systems. By default, this
is set to <code>FALSE</code>.
<br><dt><code>ignore_file</code><dd>The attribute <code>ignore_file</code> specifies the name of the file used
by the VCS Explorer to get the list of files to ignore. By default for
the CVS mode this is set to <samp><span class="file">.cvsignore</span></samp>.
<br><dt><code>atomic_commands</code><dd>The attribute <code>atomic_commands</code> specifies if the VCS supports
atomicity and can take the values <code>TRUE</code> or <code>FALSE</code>. If it
is set to <code>TRUE</code> it means that the VCS supports atomic
commands. It is <code>FALSE</code> by default. This attribute is important
to trigger the activities group commit feature. See See <a href="The-VCS-Activities.html#The-VCS-Activities">The VCS Activities</a>.
<br><dt><code>path_style</code><dd>The attribute <code>path_style</code> specifies which kind of directory separator
is supported by the VCS and can take the values <code>UNIX</code>,
<code>DOS</code>, <code>Cygwin</code> or <code>System_Default</code>. The later value is
the default value. With this attribute it is possible to control the
directory separator to use when specifying files to the VCS. For the
<code>Cygwin</code> case the drive is specified as <code>/cygdrive/<drive></code>.
<br><dt><code>dir_sep</code><dd>Alias for <code>path_style</code>, obsolescent.
<br><dt><code>commit_directory</code><dd>The attribute <code>commit_directory</code> specifies if the VCS supports
commit on directories and can take the values <code>TRUE</code> or <code>FALSE</code>.
If it is set to <code>TRUE</code> it means that the VCS supports commit on
directories this is the case for <code>Subversion</code> for example.
<br><dt><code>administrative_directory</code><dd>The attribute <code>administrative_directory</code> specifies the name of
the directory where the external VCS stores the local repository
information. For example for Subversion this is <samp><span class="file">.svn</span></samp>. This
information is used when the project is setup to select automatically
the external VCS. See <a href="Version-Control-System.html#Version-Control-System">Version Control System</a>.
<br><dt><code>require_log</code><dd>The attribute <code>require_log</code> specifies if the VCS require a log
for the commit/add/delete actions. It can take the values <code>TRUE</code>
or <code>FALSE</code>. If it is set to <code>TRUE</code> GPS will ensure that
a log is created for each file. If it is set to <code>FALSE</code> GPS will
not ask for log, it is expected to be handled by the external VCS.
</dl>
<p>Note that to support group commit with shared log on GPS both
<code>absolute_name</code> and <code>atomic_commands</code> must be true. This is
the case for the Subversion VCS for example.
<p>Here is an example, adapted to the use of CVS:
<pre class="smallexample"> <vcs name="Custom CVS" absolute_names="FALSE">
(... description of action associations ...)
(... description of supported status ...)
(... description of output parsers ...)
</vcs>
</pre>
</body></html>
|