Exclude VCS directory with writing from an archive
[tar.git] / doc / README.manual
blobb75e91347ca1035664ffdf99d3d77f8434abaa0c
1 * Overview
3 This file is a short instruction for maintainers on how to create and
4 publish the online version of the Tar Manual.
6 In the sections below we assume that the tar project has been properly
7 cloned from the git repo, bootstrapped and configured.  We also assume
8 that top-level directory of the project is the current local directory.
10 * Creating the web manual
12 To create the online version of the documentation, run
14   make -C doc manual-rebuild
16 This will create the directory doc/manual populated with the tar
17 documentation files in various formats.  If the doc/manual directory
18 already exists, it will be removed prior to rebuilding.
20 The command produces very copious output.  We advise you to examine it
21 closely to make sure no error messages slip your attention. 
23 For the completeness sake, there are two more Makefile goals related
24 to the online manual:
26 ** make -C doc clean-local
28 Removes the doc/manual directory, if it exists.
30 ** make -C doc manual
32 Builds the doc/manual, unless it already exists.
34 * CVS Repository
36 The online tar manual[1] is a part of tar web pages[2] and is
37 traditionally maintained in the CVS repository[3].  To publish the
38 generated documentation, you will need first to check out tar web
39 pages from the CVS.  To do so, run
41   cvs -z3 -d:ext:<username>@cvs.savannah.gnu.org:/web/tar co tar
43 where <username> is your user name on Savannah.  For the rest of this
44 document we will assume that the checked out version of the tar web
45 pages resides in the ~/websrc/tar directory.
47 If you have already checked out the web pages, be sure to update them
48 before publishing:
50   cd ~/websrc/tar
51   cvs update
53 * Publishing
55 To publish the created manual, change to the tar top-level directory
56 and run:
58   rsync -avz --exclude CVS --delete manual ~/websrc/tar 
60 This will synchronize the newly created manual pages with the content
61 of the CVS sandbox.  Then, change to the ~/websrc/tar directory and
62 schedule any removed files for removal and any new files for addition
63 to the repository:
65   cvs diff --brief 2>&1 | sed -n 's/.*cannot find //p' | xargs cvs rm
66   cvs diff --brief 2>&1 | sed -n 's/^? //p' | xargs cvs add
68 Then commit your changes:
70   cvs commit 
72 Once the changes are committed to CVS a job is scheduled on the server,
73 which synchronizes them with the content of the directory served by
74 the httpd daemon.  Normally such synchronization happens within
75 several seconds from the commit.
77 For more information about CVS, please see its documentation[4].
79 * References
81 [1] https://www.gnu.org/software/tar/manual/
82 [2] https://www.gnu.org/software/tar/
83 [3] https://web.cvs.savannah.gnu.org/viewvc/tar/
84 [4] https://www.nongnu.org/cvs/#documentation
87 Local Variables:
88 mode: outline
89 paragraph-separate: "[  \f]*$"
90 version-control: never
91 End: