=head1 SYNOPSIS
-public-inbox-fetch -C INBOX_DIR
+public-inbox-fetch [--exit-code] -C INBOX_DIR
=head1 DESCRIPTION
for maintaining git-only backups.
For v2 inboxes, it will maintain C<$INBOX_DIR/manifest.js.gz>
-file to speed up future invocations.
+file to speed up future invocations. It always safe to remove
+manifest.js.gz, it is merely an optimization and will be
+restored on the next invocation.
+
+To prevent fetches on any v2 epoch, use L<chmod(1)> to remove
+write permissions to the top-level of the epoch. For example,
+to disable fetches on epoch 4:
+
+ chmod a-w $INBOX_DIR/git/4.git
+
+If you wish to re-enable fetches to the epoch:
+
+ chmod u+w $INBOX_DIR/git/4.git
=head1 OPTIONS
Quiets down progress messages, also passed to L<git-fetch(1)>.
+=item --exit-code
+
+Exit with C<127> if no updates are done. This can be used in
+shell scripts to avoid invoking L<public-inbox-index(1)> when
+there are no updates:
+
+ public-inbox-fetch -q --exit-code && public-inbox-index
+ test $? -eq 0 || exit $?
+
=item -v
=item --verbose
Default: C<auto>
+=back
+
+=head1 EXIT CODES
+
+=over
+
+=item 127
+
+no updates when L</--exit-code> is used above
+
+=back
+
+public-inbox-fetch will also exit with curl L<curl(1)/EXIT CODES>
+as documented in the L<curl(1)> manpage (e.g. C<7> when curl cannot
+reach a host). Likewise, L<git-fetch(1)> failures are also
+propagated to the user.
+
=head1 CONTACT
Feedback welcome via plain-text mail to L<mailto:meta@public-inbox.org>
=head1 SEE ALSO
-L<public-inbox-index(1)>
+L<public-inbox-index(1)>, L<curl(1)>