Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jdoiro3/dagit

DaGit to learn Git Internals
https://github.com/jdoiro3/dagit

dag educational git learning visualization

Last synced: 24 days ago
JSON representation

DaGit to learn Git Internals

Awesome Lists containing this project

README

        

# DagGit
*Work in progress.*

Git's docs on its [Internals](https://git-scm.com/book/en/v2/Git-Internals-Git-Objects)
state:

```
Git is a content-addressable filesystem. Great. What does that mean?
```

It means you should `dagit` (rhymes with `maggot`). Also, read the docs linked above, but
again, `dagit`. It's as simple as running:

```bash
cd repo/path
dagit start
```

And then run `git` commands in another terminal.

## Install

### Homebrew

```bash
brew install jdoiro3/dagit/dagit
dagit -h
```

### Docker

```bash
docker pull jdoiro3/dagit:latest
docker run --rm -it -v ${PWD}:/path/to/repo --entrypoint /bin/sh jdoiro3/dagit
```

## Demos

![output](https://github.com/jdoiro3/DaGit/assets/57968347/dd27aba3-d0f8-4ef3-a45d-b3a6d3d47e83)

See a longer demo [here](https://www.youtube.com/watch?v=ltedKFWv1oo).

## Screenshots

Screenshot 2024-04-16 at 5 02 56 PM

Screenshot 2024-04-16 at 5 06 33 PM

## TODO

- [ ] Parse/unpack Git packfiles
- [ ] Write tests