/usr/share/doc/gnat-gps/html/Remote-Files.html is in gnat-gps-doc 5.0-16.
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 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- 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 2 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/.
A copy of the license is included in the section entitled
"GNU General Public License". -->
<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Using the GNAT Programming Studio: Remote Files</title>
<meta name="description" content="Using the GNAT Programming Studio: Remote Files">
<meta name="keywords" content="Using the GNAT Programming Studio: Remote Files">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Index-table.html#Index-table" rel="index" title="Index table">
<link href="Editing-Files.html#Editing-Files" rel="up" title="Editing Files">
<link href="Source-Navigation.html#Source-Navigation" rel="next" title="Source Navigation">
<link href="Saving-Files.html#Saving-Files" rel="previous" title="Saving Files">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
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 lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Remote-Files"></a>
<div class="header">
<p>
Previous: <a href="Saving-Files.html#Saving-Files" accesskey="p" rel="previous">Saving Files</a>, Up: <a href="Editing-Files.html#Editing-Files" accesskey="u" rel="up">Editing Files</a> [<a href="Index-table.html#Index-table" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Remote-Files-1"></a>
<h3 class="section">5.13 Remote Files</h3>
<a name="index-remote-files"></a>
<a name="index-ftp"></a>
<a name="index-ssh"></a>
<a name="index-rsh"></a>
<a name="index-rsync"></a>
<a name="index-telnet"></a>
<a name="index-http"></a>
<p>GPS has a basic support for working with files on remote hosts. This includes
a number of protocols, described below, which allow you to read a file from
a remote host, edit it locally, and then save it transparently to the remote
machine.
</p>
<p>For now, the support for remote files is only available through the GPS
shell window. You start editing a remote file by typing a line similar to
</p>
<div class="smallexample">
<pre class="smallexample">Editor.edit protocol://user@machine/full/path
</pre></div>
<p>where "protocol" should be replaced by the name of the protocol you want to
use, "user" is the login name you wish to use on the remote "machine", and
"/full/path" is the full path on the remote machine to access the file.
</p>
<p>The user name is optional. If it is the same as on the local machine, you
can omit the user name as well as the "@" sign.
</p>
<p>Likewise, the machine name is optional, if you want to get a file from the
local host. This can be used to access files belonging to another user. In this
case, you need to specify the "@" sign, but do not insert a machine name right
after it.
</p>
<p>Remote files can also be used if you want to work with GPS, but the machine on
which the files are found isn’t supported by GPS.
</p>
<p>The following protocols are supported:
</p>
<dl compact="compact">
<dt><b>ssh</b></dt>
<dd><p>This protocol is based on the ssh command line tool, which must therefore be
available in the path. It provides encrypted and secure connections to the
remote host. Files are transfered in-line, that is the connection is established
the first time you access the remote host, and kept open for all further
access.
</p>
<a name="index-password"></a>
<p>Although ssh can be setup not to require a password, GPS will automatically
detect if a password is asked and open a dialog to query it.
</p>
<p>The remote system must be a Unix-like system with support for standard Unix
commands like <code>test</code>, <code>echo</code>, <code>rm</code> and <code>ls</code>.
</p>
<p>In the sample shell command above, you would replace the word "protocol" with
"ssh" to use this protocol.
</p>
</dd>
<dt><b>rsh</b></dt>
<dd><p>This protocol behaves like ssh, except that the connections are not encrypted.
However, this protocol is generally available on all Unix machines by default.
</p>
<p>It has the same requirements that the ssh protocol. To use it, substitute the
word "rsh" to "protocol" in the example above.
</p>
</dd>
<dt><b>telnet</b></dt>
<dd><p>This protocol is based on the standard telnet protocol. It behaves much like
the two protocols above, with an unencrypted connection.
</p>
<p>To use it, substitute the word "telnet" to "protocol" in the example above.
</p>
</dd>
<dt><b>scp</b></dt>
<dd><p>This protocol is also based on one of the tools of the ssh suite. It provides
encrypted connections, and uses a mixture of ssh and scp connections.
Various commands like querying the time stamp of a file are executed through a
permanent ssh connection, whereas files are downloaded and uploaded through
a one-time scp command.
</p>
<p>It basically has the same behavior as the ssh protocol, although it might be
slightly slower since a new connection has to be established every time a file
is fetched from, or written to the remote host. However, it might work better
than ssh if the file contains 8 bit characters.
</p>
<p>To use it, substitute the word "scp" to "protocol" in the example above.
</p>
</dd>
<dt><b>rsync</b></dt>
<dd><p>Just like scp is based on ssh, this protocol is based on either rsh or ssh.
It depends on the external tool rsync, and uses a mixture of a rsh/ssh
connection for commands like querying the time stamp of a file, and one-time
connections with rsync to transfer the files.
</p>
<p>Rsync is specially optimized to transfer only the parts of a file that are
different from the one already on the remote host. Therefore, it will generally
provide the best performance when writing the file back to the remote host.
</p>
<p>If you set up the environment variable RSYNC_RSH to ssh before starting gps,
the connection will then be encrypted when transferring the files, and the
connection will be performed using ssh instead of rsh.
</p>
<p>To use this protocol, substitute the word "rsync" to "protocol" in the
example above.
</p>
</dd>
<dt><b>ftp</b></dt>
<dd><p>This protocol provides only limited capabilities, but can be used to retrieve
or write a file back through an ftp connection, possibly even through an
anonymous ftp connection.
</p>
<p>To use this protocol, substitute the word "ftp" to "protocol" in the example
above.
</p>
</dd>
<dt><b>http</b></dt>
<dd><p>This is the usual http protocol to download documents from the web. It is in
particular useful for documentation
</p>
</dd>
</dl>
<hr>
<div class="header">
<p>
Previous: <a href="Saving-Files.html#Saving-Files" accesskey="p" rel="previous">Saving Files</a>, Up: <a href="Editing-Files.html#Editing-Files" accesskey="u" rel="up">Editing Files</a> [<a href="Index-table.html#Index-table" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>
|