-
Notifications
You must be signed in to change notification settings - Fork 0
Command reference
Every command works two ways, and since 2.0.0 both produce identical commits:
:GIT STATUS in a session (the verb)
$ udt-git status from the shell (the CLI)
The CLI is a drop-in for stock git — same subcommands, same flags, same
argument order. -a <account> picks the account when you are not standing in
it. Use udt-git, uv-git or mvx-git for your platform.
The verb takes commands in upper case; the CLI in lower, like git.
| Command | What it does |
|---|---|
INIT |
create the record repository |
ADD |
stage records (file {id})-A, --all — stage every changed record-o, --open — open (portable) format |
RM |
unstage a record (file id) |
IGNORE |
keep records out of history (pattern) |
VERSION |
engine, libgit2 and its transports |
STATUS |
show staged / changed records |
COMMIT |
commit staged records (-m msg)-m, --message — commit message |
LOG |
commit history |
DIFF |
record changes ({file}); --staged for the index--staged — diff the index against HEAD--cached — the same, spelled git's older way-u, --unified — unified output, with hunk headers |
SHOW |
committed content of a record (file id) |
RESTORE |
restore records from HEAD (file) |
BRANCH |
list or create a branch (name) |
CHECKOUT |
switch branch, update records (name) |
MERGE |
merge a branch into this one (name) |
CHERRY-PICK |
apply one commit (commit) |
CLONE |
clone a repo into a dir (url dir {ref}) |
FETCH |
fetch a remote ({remote}) |
PULL |
fetch + merge, re-materialising ({remote} {branch}) |
IMPORT |
re-materialise a file's records from HEAD (file) |
PUSH |
push to a remote ({remote} {refspec}) |
REMOTE |
list or configure remotes ({add |
CONFIG |
get or set repo config (key {value}) |
ATTR |
view or edit account / file attributes ({file})-s, --set — set a parameter (name=value)-u, --unset — remove a parameter (name)--sync — adopt the live file's geometry as an edit-e, --edit — full-screen editor |
TAG |
list or manage tags (name {commit} |
$ udt-git init # create the repository
$ udt-git add -A # stage every changed record
$ udt-git commit -m "import the CLIENTS file"
$ udt-git status
$ udt-git log --oneline:GIT INIT
:GIT ADD -A
:GIT COMMIT -m "import the CLIENTS file"
:GIT STATUS
:GIT LOG --ONELINE
$ udt-git remote add origin https://github.com/you/your-account.git
$ udt-git push origin main
$ udt-git clone https://github.com/mvx-lang/demo.git mydemo
$ udt-git pullclone builds a live account straight from the git objects — the portable
form never lands on disk. pull re-materialises the records it brings down.
Opt in per repository, the core.autocrlf analogue:
$ udt-git config mvx.openaccount true
$ udt-git clone --open-account <url> # or --no-open-account to declineclone asks rather than deciding silently. See
Git structure of an account.
ATTR views and edits the account descriptor and a file's geometry:
$ udt-git attr # the account
$ udt-git attr CLIENTS # one file
$ udt-git attr CLIENTS --sync # adopt the live geometry as an edit
$ udt-git attr -s modulo=101 CLIENTS$ udt-git ignore 'WORKFILE/*'$ udt-git --versionreports the engine, libgit2 and its transports. A development build carries the
short commit as well (2.0.0+g1234abc), so a bug report names the exact tree.
Start here
Install
Reference
Related