[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: lots of fatal build system bugs on OpenBSD
From: |
Steffen Nurpmeso |
Subject: |
Re: lots of fatal build system bugs on OpenBSD |
Date: |
Tue, 22 Mar 2022 15:27:01 +0100 |
User-agent: |
s-nail v14.9.23-255-gdafaa09dd5 |
Ingo Schwarze wrote in
<YjnW+ELAjuguq0dq@asta-kit.de>:
|Douglas McIlroy wrote on Tue, Mar 22, 2022 at 08:58:19AM -0400:
|> Tangential comment:
|> I have always recoiled from git.
|
|I agree to some extent. Git does get a number of things right, but
|there are also many aspects of its user interface and design that make
|it harder to use than necessary. It's hard to call those issues fatal
I do not agree with that.
Mr. McIlroy was used to Plan9, and they had a SHA-1/block based
backing store behind a short lived cache aka venti/fossil etc.
So it can be said he/they even invented the actual concept.
But it is not daily snapshoted etc., but explicitly on request.
It is just a database of hashed objects. The database consists of
several types of objects (commits, directory/content snapshots,
and binary blobs), which refer to each other and (can) form
several paths through the database. Like a (several) commit
history line(s) of a branch(es).
That said, i learned it now over a decade ago, and basically did
not move. I use commands like "git update-ref refs/heads/BRANCH
SHA-1/BRANCH" to reset history line "heads". I use "git tag TAG
SHA-1/BRANCH" to introduce a tag in the tag in the line. I use
"git fetch [-v] [UPSTREAM NAME]" to synchronise, "git push
[UPSTREAM NAME] [:BRANCH NAME:]" in the other direction.
I use "git commit" to create a commit object.
"git rebase [--onto BRANCH] SHA-1^/BRANCH^ (first) SHA-1/BRANCH
(last) to rebase (parts of) history lines.
I use "git merge [--ff-only] SHA-1/BRANCH" to merge other lines
onto the current one.
We are basically there. "git reset [--hard] BRANCH".
Ah yes, "git diff [--cached]", because there is the working tree
and the things yet "git add [:FILE:]"ed to the staging area that
will be used by the next "git commit".
Today much much more is possible, partial checkouts etc etc.
That however is beyond my capabilities.
--steffen
|
|Der Kragenbaer, The moon bear,
|der holt sich munter he cheerfully and one by one
|einen nach dem anderen runter wa.ks himself off
|(By Robert Gernhardt)