-
Notifications
You must be signed in to change notification settings - Fork 0
Installing on UniData
Installs udt-git (the shell CLI) and the in-session GIT verb from a release
tarball. Takes a few minutes; needs sudo.
A UniData install. $UDTHOME defaults to /usr/ud83; set it if yours
differs.
libgit2 at run time. The release binaries link libgit2.so.1.7. libgit2's
soname pins major.minor, so a different series will not load — 1.9 is not a
substitute for 1.7. On Enterprise Linux 8 it comes from EPEL:
$ sudo dnf install -y epel-release
$ sudo dnf install -y libgit2_1.7The base RHEL/Rocky 8 libgit2 is 0.26 and will not work.
A locale UniData accepts. The installer defaults to en_US.UTF-8. Do not
use C.UTF-8 or POSIX — udt rejects them (see
troubleshooting).
Download the udt tarball for your platform from the
latest release:
$ tar xzf mv_git-2.0.0-udt-linux-x86_64-le.tar.gz
$ cd mv_git
$ ./install.shUnpack it as the user who should own it — the installer takes that user as
the operator and catalogs as them. Cataloging as root leaves a root-owned
CTLG that later breaks upgrades.
The unpacked directory is a UniData account, and it stays where you put it — the installer turns it into a real one rather than copying files elsewhere. Do not delete it afterwards.
./install.sh does the host-level, once-per-machine work:
-
udt-git→/usr/local/bin, and the verb source →$UDTHOME/lib/mvgit -
newaccton this directory soudtcanLOGTOit - builds
$UDTHOME/bin/libu2callc.soso theGIT*CallC functions resolve - compiles and globally catalogs the
GITverb, soGITworks in every account on the box
Useful environment variables: UDTHOME (default /usr/ud83), UDT_OWNER /
UDT_GROUP (the account owner), LANG.
The verb is global after step 2, so each account needs only a repository:
$ udt-git -a /usr/ud83/demo initOr, from inside the account, using the shipped setup program:
ED VOC GIT.BP
001: DIR
002: /home/rocky/mv_git/BP
003: /home/rocky/mv_git/D_BP
RUN GIT.BP GIT.SETUP
Then GIT INIT, and add / commit / status / log as usual.
$ udt-git --version
$ cd /usr/ud83/demo && udt-git statusand in a session:
:GIT STATUS
Both should agree. If the CLI says clean and the verb does not, you are running something older than 2.0.0 — that disagreement was #108.
udt-git starts a UniData session as you and talks to it over a pipe (the
account I/O agent). It does not use InterCall/UniObjects and needs no
unirpcd, no udcs service, and no stored password.
If you followed older instructions:
UDT_HOST,UDT_SERVICE,UDT_USERandUDT_PASSWORDare no longer used by the CLI. That route authenticated with a stored password rather than as the person running the command, and was replaced in #45. You can drop those variables and the UniRPC server setup entirely.
Unpack the new release over a fresh directory and run ./install.sh again.
Accounts keep their repositories; nothing in .git is touched.
One-off after upgrading to 2.0.0: the first in-session GIT ADD restates
dictionary records once, because the verb now stages them in the same canonical
form the CLI always has (#108).
That is expected, and happens once.
Start here
Install
Reference
Related