qg — portable and fast git frontend

DESCRIPTION

qg (Quick Git) is a git(1) frontend written in POSIX shell and awk. It provides a quick-to-type interface to git(1), allows unknown commands to pass through to git(1) directly, and aims for POSIX compliance for portability.

SYNTAX

Commands are single letters, concatenated without spaces. Commands affecting the remote use uppercase, local commands use lowercase. Arguments that aren't part of qg's command string are separated by spaces.

COMMANDS

sstatus (numbered file listing)
aadd (by row numbers, e.g. a1-3)
b namebranch
ccommit
ddiff
g querygrep
llog
ppull
rrestore (by row numbers)
C namecheckout
M namemerge
Ppush
Rrm
Sstash
Sb nstash branch
Sc nstash clear
Sd nstash drop
Sl nstash list
Sp nstash pop
Ss nstash save/show
V hashrevert
!cmd!pass through to git(1) (use _ for spaces)

EXAMPLES

Status with numbered file listing:

$ qg s
On branch master
Your branch is up to date with 'origin/master'.

Changes to be committed:
1.	modified:   LICENSE

Changes not staged for commit:
2.	modified:   README.md
3.	modified:   qg

Untracked files:
4.	newfile.txt

Add files 1 through 3, commit, and push:

$ qg a1-3cP

Pop stash 0:

$ qg Sp 0

Make a branch off master, switch to it, and push:

$ qg CpbCP master new_branch

Fetch all remotes, then checkout a branch:

$ qg !fetch_--all!C my_new_branch

DEPENDENCIES

POSIX shRequired
POSIX awkRequired
git(1)Required

DOWNLOAD

Since the demise of NotABug quick-git is curently unavailable for download. Contact ktnb at NetBSD dot org if interested.

LICENSE

BSD 3-Clause.

SEE ALSO

gitDistributed version control system
gituiTerminal UI for git
tigText-mode interface for git