Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GITUP(1)()			     LOCAL			    GITUP(1)()

NAME
       gitup --	A minimalist, dependency-free program to clone/pull Git	repos-
       itories.

SYNOPSIS
       gitup  section  [-cklrSV]  [-C  configuration  file] [-d	display	depth]
	     [-h commit	checksum] [-I ignore paths that	contain	 this  string]
	     [-p   target  path]  [-t  tag]  [-u  pack	file]  [-v  verbosity]
	     [-w commit	checksum]

DESCRIPTION
       gitup is	a minimalist, dependency-free program used to  clone  or  syn-
       chronize	 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  in-
       tended  to  provide a convenient	way for	users to update	FreeBSD	source
       files without having to install devel/git (and all of its  related  de-
       pendencies) and without the substantial disk overhead that normally ac-
       company 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.

       -p	   Path	to an alternative local	repository (override the `tar-
		   get_directory` that is specified  in	 gitup.conf(5)).   The
		   SHA1	 checksum  of the new absolute target path is appended
		   to the known	paths filename in /var/db/gitup	allowing  mul-
		   tiple independent copies of the repository to exist.

       -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	recon-
				  struct  the  local repository	state and con-
				  firm 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  en-
       vironment 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
       attempt	to  any	restore	any missing or modified	files from the server,
       returning 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
       argument	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/lo-
       cal/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
       recent 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
       repair has occurred and returns EXIT_FAILURE upon any unsuccessful  op-
       eration.

SEE ALSO
       gitup.conf(5)

AUTHORS
       John Mehr <jmehr@umn.edu> is the	author of gitup	and this man page.

FreeBSD	14.3			October	7, 2023			    GITUP(1)()

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gitup&manpath=FreeBSD+14.3-RELEASE+and+Ports>

home | help