каталог контроля версий git корневой файловой системы - PullRequest
0 голосов
/ 24 октября 2019

Я скачал tar-файл, который является Linux-Sample-Root-Filesystem и распакован в каталог. Я хочу использовать в каталоге контроль версий git. Но размер файла какой-то ненормальный.

Оригиналразмер каталога составляет 3,6G, затем используйте git для управления каталогом (добавление и принятие git). Однако когда он становится 3,8G после извлечения HEAD.

Я также пробую git-lfs (хранилище больших файлов),не работает.

Как мне использовать git для управления таким каталогом Linux-Sample-Root-Filesystem? Любая информация, я буду так благодарен за вашу помощь.

tar -xf Tegra_Linux_Sample-Root-Filesystem_R32.2.1_aarch64.tbz2  -C rootfs/

root@richard-VMBox:/home/richard/Desktop/example# du -sh rootfs/
3.6G    rootfs/    ####The rootfs directory total size is 3.6G. 

List of each sub-directories size.
root@richard-VMBox:/home/richard/Desktop/example/rootfs# du -sh */
12M     bin/
80K     boot/
4.0K    dev/
12M     etc/
4.0K    home/
353M    lib/
4.0K    media/
4.0K    mnt/
4.0K    opt/
4.0K    proc/
12K     root/
132K    run/
11M     sbin/
4.0K    snap/
4.0K    srv/
4.0K    sys/
4.0K    tmp/
3.1G    usr/
134M    var/
  • git add rootfs /
  • git commit -m "add rootfs / dir"

 root@richard-VMBox:/home/richard/Desktop/example# rm -rf rootfs/ </p>

<code>root@richard-VMBox:/home/richard/Desktop/example# git reset --hard HEAD
...Checking out files: 100% (113421/113421), done.
HEAD is now at a65e1fe81 add rootfs dir


root@richard-VMBox:/home/richard/Desktop/example# du -sh rootfs/
3.8G    rootfs/           ###File size is bigger.
root@richard-VMBox:/home/richard/Desktop/example/rootfs# du -sh */
12M     bin/
80K     boot/
4.0K    dev/
12M     etc/
4.0K    home/
335M    lib/
4.0K    media/
4.0K    mnt/
4.0K    opt/
4.0K    proc/
12K     root/
132K    run/
11M     sbin/
4.0K    snap/
4.0K    srv/
4.0K    sys/
4.0K    tmp/
3.3G    usr/
134M    var/    
</code>

1 Ответ

1 голос
/ 25 октября 2019

В общем, не стоит контролировать все файловые системы контроля версий. Инструменты контроля версий, такие как Git, лучше всего работают с текстовыми файлами, и хранение больших двоичных файлов не рекомендуется. Git также не поддерживает вещи, которые вам могут понадобиться, такие как жесткие ссылки, разрешения пользователей и групп или любые разрешения, отличные от 644 и 755.

Если вы действительно хотите это сделать, вы можете посмотреть что-то вродеpristine-tar, в котором хранятся файлы и разница между этими файлами и самим архивом.

Причина, по которой вы видите увеличение размера файла, связана с каталогом .git. Когда вы проверяете файлы в Git, все файлы и каталоги хранятся в сжатом виде внутри каталога .git. В результате дополнительные 200 МБ, вероятно, принадлежат этим хранимым данным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...