Understanding the git internals, a deep dive into the .git folder [Advanced]

Опубликовано: 01 Январь 1970
на канале: glich.stream
6,348
278

Learn git the hard way! I'm re-implementing git from the ground up so that you can get the chance to understand at a very deep level how this tool works.

git is a tool that is used by millions of developers every day, but it's also a tool that is often misunderstood. I want to help you understand how git works, and how you can use it more effectively.

In this part, I covered:
deep dive into the .git folder
understanding objects, trees, blobs, and their representation on disk
scaffolding the CLI and implementing git init, git commit

The Full Playlist:    • Rewriting git from scratch in Go!  

▬▬▬▬▬▬ Resources & References 📕 ▬▬▬▬▬▬

Building git (James Coglan): https://shop.jcoglan.com/building-git/
g source code (only available to my Patreon and Youtube members): https://github.com/glich-stream/g
git lfs: https://git-lfs.com/

▬▬▬▬▬▬ Chapters 🕐 ▬▬▬▬▬▬

00:00:00 - Intro
00:03:50 - Deep dive into the .git folder
00:10:44 - .git/config file
00:13:49 - git hooks
00:16:46 - exclude without .gitignore
00:18:31 - git lfs (large file storage)
00:21:05 - git refs
00:22:06 - how git represents objects on disk (blobs, trees, commits)
00:34:37 - decompressing objects with zlib DEFLATE
00:38:07 - understanding blobs with hexdump
00:56:25 - creating the command line interface (CLI) with cobra
01:00:54 - implementing git init
01:09:38 - start implementing git commit
01:18:41 - conclusion

▬▬▬▬▬▬ Connect with me 👋 ▬▬▬▬▬▬

Twitter:   / bassemdy  
GitHub: https://github.com/link-
LinkedIn:   / bassemdghaidy  
Facebook:   / bassemdy  
Blog: https://blog.bassemdy.com

▬▬▬▬▬▬ Support the channel 💜 ▬▬▬▬▬▬

Every little bit helps ✨
Become a member of the channel: https://glich.stream/yt_members
Get access to Patreon exclusive perks: https://glich.stream/patreon
1 time support: https://glich.stream/coffee_shop

#glichstream #softwareengineering #programming #coding #git