Мультизв'язані відслідковані файли не призведуть до того, що зберігання об’єктів Git значно зросте, оскільки кожна посилання буде представлена саме тим самим об'єктом blob. Однак ваше робоче дерево може зростати через зламані зв’язки.
Git не відстежує, чи відслідковуються, працюючі файли деревця є посиланнями на один і той же файл.
Git залишить безліч зв'язаних, відслідкованих, працюючих дерев-файлів в спокої, якщо ви не попросите його зробити щось, що передбачає зміну вмісту в цих іменах шляхів або видалення записів каталогу каталогів. Але якщо ви (наприклад) здійснили оформлення старої комісії або гілки, а потім переключились на свою звичайну, найновішу гілку / фіксацію, Git в кінцевому підсумку "порушить" жорсткі посилання (замінивши порушені імена шляхів новими (але однаковими) ) файли, а не відтворення вашої багатопоточної ситуації).
Щоб відновити свій багатозахисний статус, ви можете написати програму для сканування ідентичних файлів і відновлення їх до будь-якого з файлів. Така операція "перезавантаження" може бути складнішою, якщо всі посилання не знаходяться в самому робочому дереві або, принаймні, не в якомусь легко визначити "зовнішньому" місці (тобто відновити посилання, якщо ви посилаєтесь, можливо буде важко "Випадкові" файли з усього домашнього каталогу в сховище "резервного копіювання" та використання Git для зміни робочого дерева).
Ідея з'явилася у списку розсилки Git: