FreeBSD Manual Pages
GITUP(1) LOCAL GITUP(1) NAME gitup -- A minimalist, dependency-free program to clone/pull Git reposi- tories. SYNOPSIS gitup section [-cklrSV] [-C configuration file] [-d display depth] [-h commit checksum] [-I ignore paths that contain this string] [-t tag] [-u pack file] [-v verbosity] [-w commit checksum] DESCRIPTION gitup is a minimalist, dependency-free program used to clone or synchro- nize a local copy of a Git repository. It is not intended to be a full- featured replacement for the devel/git port, but rather, is intended to provide a convenient way for users to update FreeBSD source files without having to install devel/git (and all of its related dependencies) and without the substantial disk overhead that normally accompany local Git repositories. gitup currently only supports anonymous, encrypted transfers via the "Smart HTTP" protocol over HTTPS. OPTIONS Configuration options are stored in /usr/local/etc/gitup.conf and are grouped into commonly used sections (additional custom sections can be added to this file). The following command line options can be used to override the default and/or section values: -C The location of the configuration file to use. -c Force gitup to clone the repository. -d Limit the display of updated files to the specified number of directories deep. (0 = display the full path of each file). -h The "have" commit checksum of the repository to use. Only needed when importing a pack file generated by the official Git client. -I Ignore paths that contain this string. Regular expressions are supported. -k Save a copy of the pack data. -l Low memory mode -- temporarily stores uncompressed object data to disk instead of memory. -r Repair the local repository, replacing any files that are missing or have been modified. -S Specify the source IP address on the local machine to use. -t Fetch the commit referenced by the specified tag. -u Skip the download of the pack data and use the specified file instead. -v How verbose the output should be (0 = no output, 1 = show only names of the updated files, 2 = also show all files that are being ignored, 3 = also show commands sent to the server and additional debugging information). -V Display the version number and exit. -w The "want" commit checksum of the repository to retrieve. FILES /usr/local/etc/gitup.conf Default location of the gitup configuration file. /var/db/gitup Default location where gitup stores its lists of known files. The files stored here are used during subsequent runs to reconstruct the local repository state and confirm that the local tree is intact. ENVIRONMENT Proxy server host, port, username and password values can be entered in "/usr/local/etc/gitup.conf" or can be specified in the https_proxy envi- ronment variable: https://server:port/ https://username:password@server:port/ CAVEATS Because gitup neither uses nor updates the .git directory, it is not a drop-in replacement for the official Git client. gitup should only be used on repositories originally cloned with the official Git client if there is no intention to ever use the official Git client on that local repository again. To keep its footprint as small as possible, gitup does not retain pack files downloaded from the repository (unless explicitly instructed to do so) and does not use a saved pack file (unless explicitly instructed to do so). gitup relies on the known remote files lists stored in /var/db/gitup and the current state of the local repository to recon- struct data that would normally be stored in the pack file. Discrepan- cies in the local repository will be flagged as errors and gitup will at- tempt to any restore any missing or modified files from the server, re- turning the local repository to a clean state. Extra care should be given when specifying a commit to pull as gitup only performs shallow clones and does not have access to a repository's full commit history. If a commit is passed in via the -w command line argu- ment and that commit exists on a different branch, the Git server will neither object nor inform gitup of the branch change and will send a pack file that will convert the local repository. If the change of branches is intentional, the relevant section in /usr/local/etc/gitup.conf will need to be manually updated. EXAMPLES Using the configuration options for commonly used repositories/branches stored in /usr/local/etc/gitup.conf, to clone/pull a copy of the most re- cent revision of stable/12: gitup stable To retrieve a copy of freebsd-ports at commit 0123456789abcdef0123456789abcdef01234567: gitup ports -w 0123456789abcdef0123456789abcdef01234567 EXIT STATUS gitup returns EXIT_SUCCESS upon successful operation, returns 2 if a re- pair has occurred and returns EXIT_FAILURE upon any unsuccessful opera- tion. SEE ALSO gitup.conf(5) AUTHORS John Mehr <jmehr@umn.edu> is the author of gitup and this man page. FreeBSD 13.0 May 16, 2022 FreeBSD 13.0
NAME | SYNOPSIS | DESCRIPTION | OPTIONS | FILES | ENVIRONMENT | CAVEATS | EXAMPLES | EXIT STATUS | SEE ALSO | AUTHORS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gitup&sektion=1&manpath=FreeBSD+13.1-RELEASE+and+Ports>