ycliper

Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
Скачать

Unpacking Git - Data Structures and Algorithms that power over 10 million repositories!

Автор: Gaurav Sen

Загружено: 2020-05-10

Просмотров: 30502

Описание: What is Git fundamentally? To end users, it's a version control system. But to it's designers, it is a content-addressable system.

Let's break those words down.
Content stands for data to be stored in git. All data in git is represented as objects.
Addressable means the content can be accessed using a key or an address. You store some data, and Git returns you an ID. With this unique ID, you can ask Git to retrieve the data as and when required.
System We need a method in the madness. A system defines how the IDs will be generated, how the data will be stored, and how the interface will interact with the user.

The metadata of files are stored in trees. These are like Unix directories, containing the names of each file it stores and the ID of the file. If a file is renamed or moved, the contents of the file do not change. This means only tree objects need to be changed, which makes file renaming and moves efficiently in Git.

Make a minor change to an image file. This creates a new file in Git after committing.
This results in small changes taking very long to transfer across the network and eventually eating a lot of disk space.

Pack files contain compressed git objects, with some having parent objects.

Git garbage collection runs when transferring over the network. That's called pulling or pushing in Git. It also runs periodically to save disk space.

Rebasing is how we take a series of commits and change their base commit. This is very useful if you'd like the history to be clean.

The important thing to note is that rebase is a way of changing history to a more coherent graph. As you can expect, there are dangers with changing history.

Git is a database for content that requires continuous versioning and peer development. We can see how important hashing, compression, and commit graphs are to its architecture. Now, you can design your own version control system if you'd like to.

00:00 Skip this
05:04 Creating a Git file
10:10 Gzip algorithm for file storage
12:02 SHA algorithm for efficiency
15:43 Git Commits - Tree Building
27:40 Small changes - Diff vs. Copy
33:00 Garbage Collection with Pack Files
37:00 Skip
38:30 Commit Tree
42:00 Skip
42:30 Pack File Algorithm
48:03 Branching logic
52:30 Skip
56:40 Git Rebase Effects
59:09 QnA

#Git #Algorithms #DataStructures

CheatSheet: https://github.com/coding-parrot/proj...

System Design Playlist:    • System Design Playlist  

Become a channel member!
   / @gkcs  

You can follow me on:
Facebook:   / gkcs0  
Quora: https://www.quora.com/profile/Gaurav-...
LinkedIn:   / gaurav-sen-56b6a941  
Twitter:   / gkcs_  

Не удается загрузить Youtube-плеер. Проверьте блокировку Youtube в вашей сети.
Повторяем попытку...
Unpacking Git - Data Structures and Algorithms that power over 10 million repositories!

Поделиться в:

Доступные форматы для скачивания:

Скачать видео

  • Информация по загрузке:

Скачать аудио

Похожие видео

© 2025 ycliper. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]