riezebosch / gitviz

🔬 Visualize the directed acyclic graph that is your repository!
https://riezebosch.github.io/gitviz
MIT License
9 stars 1 forks source link

Support for packfiles #3

Open wherka-ama opened 1 year ago

wherka-ama commented 1 year ago

First of all - this little tool is great! Good job :+1:

I like it very much and it may indeed serve as a great help during the training and/or mentoring sessions to visualize the concepts related to git.

However, it doesn't seem to support packfiles. It only traverses loose objects. In that regard the tool is fairly limited as the packfiles are very common and being able to visualizing the repo with them would be quite nice indeed.

riezebosch commented 9 months ago

Thanks! I'm aware that it only traverses loose files. In my first application I even parsed that files by hand. That's why I never bothered into reverse engineering the pack file format. I always explain the concept of pack files, that than ultimately diffs are stored, I can even show it happening with git gc but still don't bother adding support in the tool. If you have some spare time, feel free to contribute 😉

wherka-ama commented 9 months ago

Thanks! I'm aware that it only traverses loose files. In my first application I even parsed that files by hand. That's why I never bothered into reverse engineering the pack file format. I always explain the concept of pack files, that than ultimately diffs are stored, I can even show it happening with git gc but still don't bother adding support in the tool. If you have some spare time, feel free to contribute 😉

Hey Manuel, hope you're fine. Spare time is a bit hard to come by these days, but I'd be happy to try making some time and trying. However, don't hold me to any deadlines please :smile:

riezebosch commented 9 months ago

Ha, it took me 7 months to reply to your message 😬

riezebosch commented 9 months ago

What I would like to see is not showing the actual contents of the pack file but rather in and out pointing references. My original goal was to show the on-disk representation of the graph.