A couple more improvements.
[rsync-web.git] / download.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
2 <html>
3 <head>
4 <TITLE>rsync download</TITLE>
5 </head>
6 <!--#include virtual="header.html" -->
7
8 <h2 align="center">rsync download</h2>
9
10 <h2>Source-code releases (tar files)</h2>
11
12 <p>You can grab the latest source code tar file, its gpg signature, and other
13 related files in a variety of ways:
14
15 <ul>
16
17 <li><p>via <a href="/ftp/rsync/">http</a> (the standard web-browser protocol)
18
19 <li><p>via <a href="ftp://ftp.samba.org/pub/rsync/">ftp</a> (file-transfer protocol)
20
21 <li><p>via <i>anonymous rsync</i> from:
22 <code><small>rsync://rsync.samba.org/rsyncftp/</small></code>
23
24 </ul>
25
26 <p>Also, an unpacked copy of the latest development version can be
27 <a href="/ftp/unpacked/rsync/">browsed on the web</a> or obtained via
28 <i>anonymous rsync</i>, as described in the Source Repository section.
29
30 <h2>Binaries</h2>
31
32 <p>Precompiled binaries are available in most modern OS distributions, so
33 you should first check if you can install an rsync package via your
34 standard package-install tools for your OS.
35
36 <p>There are also packages available from some <b>3rd-parties</b> (note that we cannot
37 vouch for 3rd parties, so use a source that you trust):
38
39 <ul>
40
41 <li><p><a href="http://dag.wieers.com/packages/rsync/">RPMs for Red Hat/Fedora</a> from Dag Wieers.
42
43 <li><p><a href="http://mattmccutchen.net/rsync/#rsync-packages">RPMs packages for i386 linux</a> from Matt McCutchen.
44
45 <li><p><a href="http://sunfreeware.com">Packages for SPARC/Solaris 2.5-10 and x86/Solaris 8-10</a>.
46
47 <li><p><a href="http://itefix.no/cwrsync/">cwRsync</a> is a packaging of rsync for MS Windows.
48
49 </ul>
50
51 <h2>Nightly tar-file snapshots</h2>
52
53 <p><a href="http://rsync.samba.org/ftp/rsync/nightly/">Nightly snapshots of the
54 rsync source tree</a> are also available for people who want to try the latest
55 development version.  If you want to track development, then using an anonymous
56 rsync copy will not require as much bandwidth (see below).  Or, updating a git repository
57 can automatically merge your local changes with our version.  However, if you
58 just want a one-off download, or you cannot use rsync or git because of firewall,
59 network, or software issues, then the snapshots can be helpful.
60
61 <h2>Source repository</h2>
62
63 <p> The rsync development tree is publicly available by various methods so that
64 you can try out the latest changes and give feedback to the developers.
65
66 <p> <b>Note:</b> Since the source repository is a work in progress it may, at
67 times, not compile or fail in various ways, though it is usually pretty good.
68
69 <p>Anyone can browse the development history through
70 <a href="http://git.samba.org/?p=rsync.git;a=summary">gitweb</a>.
71
72 <p>You may also use the git version-control system to check out the latest
73 development version, especially if you want to make local changes.  The
74 following command will check-out the latest version into a directory named
75 "rsync":
76
77 <blockquote><pre>git clone git://git.samba.org/rsync.git</pre></blockquote>
78
79 <p>After the initial clone, I also recommend running the git-set-file-times
80 script to set each file's last-modified time based on its last commit (don't
81 run it again after that unless you do a "make distclean").  You'll also need
82 autoconf and autoheader installed for the "prepare-source" command to succeed:
83
84 <blockquote><pre>cd rsync
85 support/git-set-file-times &nbsp; &nbsp; &nbsp; &nbsp; # optional
86 ./prepare-source</pre></blockquote>
87
88 <p>
89
90 <p>Updating your git checkout with the latest source is very easy:
91
92 <blockquote><pre>git pull</pre></blockquote>
93
94 <p>Those wanting to just obtain the latest source without the entire git
95 repository can either use a nightly tar-file snapshot (see above)
96 or use an <i>anonymous rsync</i> copy of the unpacked source files:
97
98 <blockquote><pre>rsync -av --exclude=.git/ rsync://rsync.samba.org/ftp/unpacked/rsync /dest/dir/</pre></blockquote>
99
100 <h2>Source repository patch branches</h2>
101
102 <p>There are also various patch/* branches in the git repository that represent
103 either work-in-progress features or features that are considered to be a little
104 too fringe-interest for the main release.  You can see these items as
105 <a href="http://rsync.samba.org/ftp/rsync/patches/">patch files</a> for the dev
106 release, or checkout a branch using git.  For instance, the following command set will
107 list all the patch/* branches available on the remote (origin) repository:
108
109 <blockquote><pre>git branch -r | fgrep origin/patch/</pre></blockquote>
110
111 <p>To checkout one branch&mdash;let's say "foo"&mdash;as a local branch that
112 can be locally modified while still tracking the remote branch, run this:
113
114 <blockquote><pre>git checkout --track -b patch/foo origin/patch/foo</pre></blockquote>
115
116 <p>Finally, you can checkout a remote branch in a way that can be built, but
117 local changes cannot be committed (unless you create a local branch later):
118
119 <blockquote><pre>git checkout origin/patch/foo</pre></blockquote>
120
121 <!--#include virtual="footer.html" -->