1910.19.4
by Andrew Bennetts
Add a doc on "Running a Bazaar Server" (Robert Collins, Andrew Bennetts) |
1 |
======================= |
2 |
Running a Bazaar Server |
|
3 |
======================= |
|
4 |
||
5 |
Bazaar does not require a specialised server because it operates over HTTP, FTP |
|
6 |
or SFTP. There is an optional smart server that can be invoked over SSH, from |
|
7 |
inetd, or in a dedicated mode. |
|
8 |
||
9 |
Dumb servers |
|
10 |
============ |
|
11 |
||
12 |
We describe HTTP, FTP, SFTP and HTTP-WebDAV as "dumb" servers because they do |
|
13 |
not offer any assistance to Bazaar. If you make a Bazaar repository available |
|
14 |
over any of these protocols, Bazaar will allow you to read it remotely. Just |
|
15 |
enter the URL to the branch in the Bazaar command you are running.:: |
|
16 |
||
17 |
bzr log http://bazaar-vcs.org/bzr/bzr.dev |
|
18 |
||
19 |
Bazaar supports writing over FTP, SFTP and via a plugin over HTTP-WebDAV. |
|
20 |
||
21 |
High performance server |
|
22 |
======================= |
|
23 |
||
24 |
**In development** |
|
25 |
||
26 |
The high performance server is currently in development. The version of Bazaar |
|
27 |
that accompanies this documentation is able to use the servers underlying |
|
28 |
protocol as a dumb server. This is the first stage high performance server |
|
29 |
functionality to be delivered. |
|
30 |
||
2020.1.1
by Robert Collins
Add readonly support to the smart server, enabled by default via `bzr server`. |
31 |
The current high performance server provides read only access by default for |
32 |
security. To enable read-write access, run it with --allow-writes. When using |
|
33 |
the SSH access method, bzr automatically runs with with the --allow-writes |
|
34 |
option. |
|
1910.19.4
by Andrew Bennetts
Add a doc on "Running a Bazaar Server" (Robert Collins, Andrew Bennetts) |
35 |
|
36 |
It can be configured to run in three different ways: |
|
37 |
||
38 |
SSH |
|
39 |
--- |
|
40 |
||
41 |
Using Bazaar over SSH requires no special configuration on the server:: |
|
42 |
||
2018.1.5
by Andrew Bennetts
Expand docs about bzr+ssh:// slightly. |
43 |
BZR_REMOTE_PATH=~/bin/bzr bzr log bzr+ssh://host/path/to/branch |
44 |
||
45 |
The `BZR_REMOTE_PATH` environment variable adjusts how `bzr` will be invoked on |
|
46 |
the remote system. By default, just `bzr` will be invoked, which requires the |
|
47 |
`bzr` executable to be on the default search path. |
|
48 |
||
49 |
The `bzr+ssh://` URL scheme only supports absolute paths from the root of the |
|
50 |
filesystem. Future versions are expected to support `~` in the same way as |
|
51 |
`sftp://` URLs. |
|
1910.19.4
by Andrew Bennetts
Add a doc on "Running a Bazaar Server" (Robert Collins, Andrew Bennetts) |
52 |
|
53 |
inetd |
|
54 |
----- |
|
55 |
||
56 |
This example shows how to run `bzr` with a dedicated user `bzruser` for a shared |
|
57 |
repository in `/srv/bzr/repo` which has a branch at `/srv/bzr/repo/branchname` |
|
58 |
||
59 |
Running a Bazaar server from inetd requires an inetd.conf entry:: |
|
60 |
||
61 |
1234 stream tcp nowait bzruser /usr/bin/bzr serve --inet --directory=/srv/bzr/repo |
|
62 |
||
63 |
When running client commands, the URL you supply is a `bzr://` URL relative to |
|
64 |
the `--directory` option given in inetd.conf:: |
|
65 |
||
66 |
bzr log bzr://host:1234/branchname |
|
67 |
||
68 |
Dedicated |
|
69 |
--------- |
|
70 |
||
71 |
This mode has the same path and URL behaviour as the inetd mode. To run as a |
|
72 |
specific, you should use `su` or login as that user. This example runs bzr |
|
73 |
serve on `localhost` port `1234`. |
|
74 |
||
75 |
server:: |
|
76 |
||
77 |
bzr serve --port=localhost:1234 --directory=/srv/bzr/repo |
|
78 |
||
79 |
client:: |
|
80 |
||
81 |
bzr log bzr://host:1234/branchname |
|
82 |