bup-get - копировать элементы репозитория (ВНИМАНИЕ: ЭКСПЕРИМЕНТАЛЬНО)
bup get [-s source-path] [-r host:path] OPTIONS <(METHOD ref [dest])>...
bup get копирует указанные ссылки из исходного репозитория в целевой репозиторий (с учетом --bup-dir и BUP_DIR) в соответствии с указанным МЕТОДОМ, который может быть одним из --ff, -- ff:, --append, --append:, --pick, --pick:, --force-pick, --force-pick:, --new-tag, --new-tag:, --replace , --replace: или --unnamed. См. ПРИМЕРЫ ниже для краткого ознакомления.
ref — это ссылка на исходный репозиторий объекта, который нужно извлечь, а dest — необязательная ссылка на место назначения. dest может быть указан только для METHOD, имя которого заканчивается двоеточием. Например:
bup get -s /source/repo --ff foo
bup get -s /source/repo --ff: foo/latest bar
bup get -s /source/repo --pick: foo/2010-10-10-101010 .tag/bar
В качестве особого случая, если ref называет «последнюю» символическую ссылку сохранения, тогда bup будет действовать точно так же, как если бы было указано сохранение, на которое «последняя» указывает, а не сама «последняя» символическая ссылка, поэтому bup get foo/latest на самом деле будет интерпретироваться как что-то вроде bup get foo/2013-01-01-030405.
В некоторых ситуациях bup get будет оценивать операцию перехода в соответствии с тем, будет ли она «ускоренной перемоткой вперед» (что требует, чтобы любая существующая целевая ветвь была предком исходной).
Существующий тег назначения может быть перезаписан только с помощью --replace или --force-pick.
Когда создается новая фиксация (т. е. с помощью --append, --pick и т. д.), она будет иметь того же автора, дату автора и сообщение, что и исходная, но коммиттер и дата коммиттера соответствуют текущему пользователю и времени. .
Если запрашиваются соответствующие параметры, bup распечатает хэш фиксации, дерева или тега для каждой обновленной ссылки назначения. Когда это уместно, хэш дерева будет напечатан перед хэшем фиксации.
Локальные ссылки могут быть отправлены в удаленный репозиторий с помощью параметра --remote, а удаленные ссылки могут быть загружены в локальный репозиторий с помощью команды «bup on HOST get.. .». Для получения дополнительной информации см. bup-on(1) и ПРИМЕРЫ ниже.
ПРЕДУПРЕЖДЕНИЕ: Это одна из немногих команд bup, которые могут намеренно деструктивно изменять ваши архивы. Хотя, если попытка присоединиться или восстановить данные, которые вам все еще нужны, увенчается успехом после запуска этой команды, то это довольно обнадеживающий признак того, что она сработала правильно. (Команду dev/compare-trees в исходном дереве можно использовать для проверки результатов до/после.)
перемотать вперед dest для соответствия ref. Если dest не указан, а ref называет сохранение, установите dest на ветвь сохранения. Если dest не указан, а ref называет ветку или тег, используйте то же имя для dest.
добавить все коммиты, представленные ref, в dest как новые коммиты. Если ref называет каталог/дерево, добавьте новую фиксацию для этого дерева. Если dest не указан, а ref называет сохранение или ветку, задайте dest имя ветки ref. Если dest не указан, а ref называет тег, используйте то же имя для dest.
добавьте единственную фиксацию, названную ref, в dest как новую фиксацию. Если dest не указан, а ref называет сохранение, задайте для dest имя ветки ref. Если dest не указан, а ref называет тег, используйте то же имя для dest.
сделайте то же самое, что и --pick, но не отказывайтесь перезаписывать существующий тег.
создайте тег dest для ref, но не перезаписывайте существующий тег. Если dest не указан, а ref называет тег, используйте то же имя для dest.
затереть dest с помощью ref, перезаписав любой существующий тег или заменив любую существующую ветвь. Если dest не указан, а ref называет ветку или тег, используйте то же имя для dest.
скопировать ref в целевой репозиторий без какого-либо имени, оставив потенциально висячую ссылку до тех пор, пока/если объект, названный ref, не будет указан каким-либо другим способом (см. тег bup) .
используйте путь в качестве исходного репозитория вместо значения по умолчанию.
хранить указанные элементы на заданном удаленном сервере. Если путь не указан, используется путь по умолчанию на удаленном сервере (вам все равно нужно включить `:'). Подключение к удаленному серверу осуществляется с помощью SSH. Если вы хотите указать, какой порт, пользователя или закрытый ключ использовать для SSH-соединения, мы рекомендуем вам использовать файл ~/.ssh/config.
для каждой обновленной ветки напечатайте новый идентификатор фиксации git.
для каждой обновленной ветки выведите новый идентификатор дерева git для корня файловой системы.
для каждого обновленного тега напечатайте новый идентификатор git.
увеличить многословность (можно использовать более одного раза). С помощью -v выведите имя каждого извлеченного элемента, с помощью -vv добавьте имена каталогов, а с помощью -vvv добавьте имена всех файлов.
не передавайте серверу больше bytes/sec байт в секунду. Это может помочь избежать использования всей пропускной способности вашей сети. Используйте суффикс, например k, M или G, чтобы указать число, кратное 1024, 1024*1024, 1024*1024*1024 соответственно.
установите уровень сжатия на # (значение от 0 до 9, где 9 — самый высокий уровень, а 0 — отсутствие сжатия). По умолчанию 1 (быстрое, слабое сжатие).
Обновите или скопируйте ветку архивов в src-repo в локальный репозиторий:
bup get -s src-repo --ff archives
Добавьте конкретное архивное сохранение в ветку pruned-archives:
bup get -s src-repo --pick: archives/2013-01-01-030405 pruned-archives
Обновите или скопируйте ветку архивов на удаленном хосте в локальный репозиторий:
bup on remotehost get --ff archives
Обновите или скопируйте архивы локальной ветки на удаленный хост:
bup get -r remotehost: --ff archives
Обновите или скопируйте ветку архивов в src-repo на удаленный хост:
bup get -s src-repo -r remotehost: --ff archives
Обновите ветку archives-2 на удаленном хосте, чтобы она соответствовала архивам. Если archives-2 существует и не является предком архивов, bup откажет:
bup get -r remotehost: --ff: archives archives-2
Замените содержимое ветки y на содержимое x:
bup get --replace: x y
Скопируйте последнее локальное сохранение из ветки архивов в удаленный тег foo:
bup get -r remotehost: --pick: archives/latest .tag/foo
Или, если foo уже существует:
bup get -r remotehost: --force-pick: archives/latest .tag/foo
Добавьте foo (сверху) в локальную ветку other-archives:
bup on remotehost get --append: .tag/foo other-archives
Добавьте только каталог /home из archives/latest в only-home:
bup get -s "$BUP_DIR" --append: archives/latest/home only-home
bup-on(1), bup-tag(1), ssh_config(5)
Часть набора bup(1).
Роб Браунинг rlb@defaultvalue.org.