Как читать содержимое файла из объектов git? - PullRequest
0 голосов
/ 03 июля 2019

Имея редко проверенное рабочее дерево, Я хочу разобрать полные объекты git, Для того, чтобы смог обновить разреженный .git/info/sparse-checkout, основанный на некоторой бизнес-логике (которая не должна быть уместной здесь).

Я попытался найти команду для извлечения "неразбавленного" во временную папку. Интересно, смогу ли я даже прочитать содержимое объектов git без проверки.

Попытка построить модуль вокруг

def _find_addons(dir):
    """ yield (addon_name, addon_dir, manifest) """
    for root, _, files in os.walk(dir):
        if ".git" in root:
            continue
        if any(s in root for s in SKIP_PATHS):
            continue
        if any(M in files for M in MANIFEST_NAMES):
            yield os.path.dirname(root), os.path.basename(root), _read_manifest(root)

Полный код:

https://github.com/xoe-labs/odooup/blob/master/odooup/_modulegraph.py

1 Ответ

0 голосов
/ 03 июля 2019

Используйте git cat-file -p <object name> для печати содержимого объекта git по его идентификатору.

...