gl — a version control system on top of Git
Contents
Common Options
The following options have a similar meaning for various commands:
-e, --exclude
Exclude the specified files; the files must be tracked and modified.
-h, --help
Display a help message.
-i, --include
Include the specified files; the files must be untracked.
-o, --only
Use only the specified files; the files must be tracked and modified.
Description
The gl utility is a version control system built on top of Git.
The gl utility accepts the following commands:
track Start tracking changes to files.
untrack
Stop tracking changes to files.
status Show the status of the repository.
diff Show the status of the repository.
commit Save changes to the local repository. By default all tracked modified files are committed. To
customize the set of files to be committed use the only, exclude, and include flags.
-m Specify the commit message.
-p, --partial
Interactively select segments of files to commit.
branch List, create, edit, or delete branches.
-c, --create
Create the specified branch(es).
-d, --delete
Delete the specified branch(es).
-dp, -divergent-point
The commit from which to “branch out”.
-sh, --set-head
Set the head of the current branch.
-su, --set-upstream
Set the upstream branch of the current branch.
-uu, --unset-upstream
Unset the upstream branch of the current branch.
-v Be verbose, output the head of each branch.
tag List, create, or delete tags.
-c, --create
Create tag(s).
-ci, --commit
Specify the commit to tag.
-d, --delete
Delete tag(s).
-r, --remote
List remote tags in addition to local ones.
checkout
Checkout the committed versions of the specified files.
-cp, --commit-point
The commit point to checkout the files as.
merge Merge the divergent changes of one branch onto another.
-a Abort the merge in progress.
resolve
Mark files with conflicts as resolved.
fuse Fuse the divergent changes of a branch onto the current branch. By default all divergent changes
from the given source branch are fused. To customize the set of commits to fuse use the only and
exclude flags.
-a, --abort
Abort the fuse in progress.
-ip, --insertion-point
The divergent changes will be inserted after the specified commit.
remote List, create, edit, or delete remotes.
-c, --create
Create a remote.
-d, --delete
Delete a remote.
publish
Publish commits upstream.
switch Switch branches.
-mo, --move-over
Move the uncommitted changes made to the current branch to the destination branch.
init Create an empty Gitless repository or create one from an existing remote repository.
history
Show the commit history.
-b, --branch
The branch to show the history of.
-c, --compact
Output the history in a compact format.
-l, --limit
Limit the number of commits displayed.
-v, --verbose
Be verbose, output the diffs of the commits.
Diagnostics
The gl utility exits 0 on success, and >0 if an error occurs.
Environment
The gl utility makes use of the following environment variables, if specified:
EDITOR Specify the editor to use for composing commit messages; default: “vim”.
PAGER Specify the pager to be used if the core.pager setting is not specified in the Git configuration;
default: “less-r-f”. If the pager to be executed is actually less(1), the -r and -f flags are
appended to its arguments.
Examples
Please see the Gitless website at https://gitless.com/.
Files
The operation of the gl utility is influenced by the same configuration files that git(1) uses; see the
“FILES” section of the git-config(1) documentation.
Name
gl — a version control system on top of Git
See Also
git(1)
Synopsis
gltrackfile...gltrack-hgluntrackfile...gluntrack-hglstatuspath...glstatus-hgldiff [-efile...] [-ifile...] [-ofile...]
gldiff-hglcommit [-mmessage] [-p] [-efile...] [-ifile...] [-ofile...]
glcommit-hglbranch [-r] [-v]
glbranch [-v] [-dppoint] -cbranch...glbranch [-v] -dbranch...glbranch-shcommit_idglbranch-subranchglbranch-uuglbranch-hgltag [-r]
gltag [-cicommit_id] -ctag...gltag-dtag...gltag-hglcheckout [-cpcommit_id] files...glcheckout-hglmergesrcglmerge-aglmerge-hglresolvefile...glresolve-hglfuse [-ipcommit_id] [-ecommit_id...] [-ocommit_id...] srcglfuse-aglfuse-hglremoteglremote-cremote remote_url
glremote-dremoteglremote-hglpublishdst_branchglpublish-hglswitch [-mo] branchglswitch-hglinit [repo]
glinit-hglhistory [-c] [-v] [-bbranch_name] [-llimit]
glhistory-hgl-hgl--version