NOME
git-anexo - gerencie arquivos com o git, sem verificar seu conteúdo em
SINOPSE
comando git anexo [params ...]
DESCRIÇÃO
O git-anexo permite gerenciar arquivos com o git, sem verificar o conteúdo do arquivo no git. Embora isso possa parecer paradoxal, é útil ao lidar com arquivos maiores que o git atualmente pode manipular facilmente, seja devido a limitações de memória, tempo de soma de verificação ou espaço em disco.
Mesmo sem o rastreamento do conteúdo do arquivo, poder gerenciar arquivos com o git, mover arquivos e excluir arquivos com árvores de diretório com versão e usar ramificações e clones distribuídos, são motivos muito úteis para usar o git. E os arquivos anexados podem coexistir no mesmo repositório git com arquivos com versão regular, o que é conveniente para manter documentos, Makefiles, etc. associados aos arquivos anexados, mas que se beneficiam do controle total da revisão.
Quando um arquivo é anexado, seu conteúdo é movido para um armazenamento de valores-chave e é feito um link simbólico que aponta para o conteúdo. Esses links simbólicos são verificados no git e versionados como arquivos regulares. Você pode movê-los, excluí-los e assim por diante. Enviar para outro repositório git fará com que o git-anexo fique ciente do arquivo anexado e pode ser usado para recuperar seu conteúdo do armazenamento de valores-chave.
EXEMPLOS
git annex get video/hackity_hack_and_kaxxt.mov
get video/hackity_hack_and_kaxxt.mov (not available) I was unable to access these remotes: server Try making some of these repositories available: 5863d8c0-d9a9-11df-adb2-af51e6559a49 -- my home file server 58d84e8a-d9ae-11df-a1aa-ab9aa8c00826 -- portable USB drive ca20064c-dbb5-11df-b2fe-002170d25c55 -- backup SATA drive
failed
sudo mount /media/usb
git remote add usbdrive /media/usb
git annex get video/hackity_hack_and_kaxxt.mov
get video/hackity_hack_and_kaxxt.mov (from usbdrive...) ok
git annex add iso
add iso/Debian_5.0.iso ok
git annex drop iso/Debian_4.0.iso
drop iso/Debian_4.0.iso ok
git annex move iso --to=usbdrive
move iso/Debian_5.0.iso (moving to usbdrive...) ok COMANDOS USADOS COMUM Como muitos comandos git, o git-annex pode receber um caminho que é um arquivo ou um diretório. Neste último caso, ele atua em todos os arquivos relevantes no diretório. Quando nenhum caminho é especificado, a maioria dos comandos git-anexos padroniza a ação em todos os arquivos relevantes no diretório atual (e subdiretórios).
help
Exibir ajuda interna.
Para obter ajuda sobre um comando específico, use git annex help command
add [path ...]
Adiciona arquivos no caminho para o anexo. Se nenhum caminho for especificado, adicione arquivos do diretório atual e abaixo.
Veja git-annex-add (1) para detalhes.
get [path ...]
Disponibiliza o conteúdo dos arquivos anexados neste repositório.
Veja git-annex-get (1) para detalhes.
drop [path ...]
Elimina o conteúdo dos arquivos anexados deste repositório.
Veja git-annex-drop (1) para detalhes.
move [path ...] [--from=remote|--to=remote]
Move o conteúdo dos arquivos de ou para outro controle remoto.
Veja git-annex-move (1) para detalhes.
copy [path ...] [--from=remote|--to=remote]
Copia o conteúdo dos arquivos de ou para outro controle remoto.
Veja git-annex-copy (1) para detalhes.
status [path ...]
Semelhante a git status --short, exibe o status dos arquivos na árvore de trabalho.
Veja git-annex-status (1) para obter detalhes.
unlock [path ...]
Desbloqueie os arquivos anexados para modificação.
Veja git-annex-unlock (1) para detalhes.
edit [path ...]
Este é um alias para o comando unlock. Pode ser mais fácil lembrar, se você pensar nisso como permitindo editar um arquivo anexo.
lock [path ...]
Use isso para desfazer um comando de desbloqueio, se você não deseja modificar os arquivos ou fez as modificações que deseja descartar.
Veja git-annex-lock (1) para detalhes.
sync [remote ...]
Sincronize o repositório local com controles remotos.
Veja git-annex-sync (1) para detalhes.
mirror [path ...] [--to=remote|--from=remote]
Espelhe o conteúdo dos arquivos de / para outro repositório.
Veja git-annex-mirror (1) para detalhes.
addurl [url ...]
Faz o download de cada URL em seu próprio arquivo, que é adicionado ao anexo.
Veja git-annex-addurl (1) para detalhes.
rmurl file url
Registre que o arquivo não está mais disponível no URL.
Veja git-annex-rmurl (1) para detalhes.
import [path ...]
Adicione arquivos de um diretório não controlado por versão ou de um controle remoto especial no anexo.
Veja git-annex-import (1) para detalhes.
importfeed [url ...]
Importa o conteúdo dos feeds de podcast para o anexo.
Veja git-annex-importfeed (1) para detalhes.
export treeish --to remote
Exporte o conteúdo para um controle remoto.
Veja git-annex-export (1) para detalhes.
undo [filename|directory] ...
Desfazer a última alteração em um arquivo ou diretório.
Veja git-annex-undo (1) para detalhes.
multicast
Distribuição de arquivos multicast.
Veja git-annex-multicast (1) para detalhes.
watch
Preste atenção nas alterações e na confirmação automática.
Veja git-annex-watch (1) para detalhes.
assistant
Sincronize automaticamente pastas entre dispositivos.
Veja git-annex-assistant (1) para detalhes.
webapp
Abre um aplicativo Web, que permite a configuração fácil de um repositório git-anexo e o controle do assistente git-anexo. Se o assistente ainda não estiver em execução, ele será iniciado.
Veja git-annex-webapp (1) para detalhes.
COMANDOS DE CONFIGURAÇÃO DO REPOSITÓRIO init [description]
Até que um repositório (ou um de seus controles remotos) seja inicializado, o git-annex se recusará a operar nele, para evitar usá-lo acidentalmente em um repositório que não pretendia ter um anexo.
Veja git-annex-init (1) para detalhes.
describe repository description
Altera a descrição de um repositório.
Veja git-anexo-descreva (1) para detalhes.
initremote name type=value [param=value ...]
Cria um novo controle remoto especial e o adiciona a .git/config.
Veja git-annex-initremote (1) para obter detalhes.
enableremote name [param=value ...]
Permite o uso de um controle remoto especial existente no repositório atual.
Veja git-annex-enableremote (1) para obter detalhes.
renameremote
Renomeia um controle remoto especial.
Veja git-annex-renameremote (1) para detalhes.
enable-tor
Configura o serviço oculto.
Veja git-annex-enable-tor (1) para obter detalhes.
numcopies [N]
Configure o número desejado de cópias.
Consulte git-annex-numcopies (1) para obter detalhes.
trust [repository ...]
Registra que um repositório é confiável para não perder conteúdo inesperadamente. Use com cuidado.
Veja git-annex-trust (1) para detalhes.
untrust [repository ...]
Registra que um repositório não é confiável e pode perder conteúdo a qualquer momento.
Veja git-annex-untrust (1) para obter detalhes.
semitrust [repository ...]
Retorna um repositório para o estado semi-confiável padrão.
Veja git-annex-semitrust (1) para obter detalhes.
group repository groupname
Adicione um repositório a um grupo.
Veja git-annex-group (1) para detalhes.
ungroup repository groupname
Remove um repositório de um grupo.
Veja git-annex-ungroup (1) para detalhes.
wanted repository [expression]
Obter ou definir a expressão de conteúdo preferida.
Veja git-annex-wanted (1) para detalhes.
groupwanted groupname [expression]
Obter ou definir a expressão desejada pelo grupo.
Veja git-annex-groupwanted (1) para obter detalhes.
required repository [expression]
Obter ou definir a expressão de conteúdo necessária.
Consulte git-annex-required (1) para obter detalhes.
schedule repository [expression]
Obter ou definir trabalhos agendados.
Veja git-annex-schedule (1) para obter detalhes.
config
Obtenha e defina outras configurações armazenadas na ramificação git-anexo.
Veja git-annex-config (1) para detalhes.
vicfg
Abre o EDITOR em um arquivo temporário que contém a maioria das definições de configuração acima, além de algumas outras, e quando sai, armazena as alterações feitas na ramificação do anexo git.
Veja git-annex-vicfg (1) para detalhes.
adjust
Alterna um repositório para usar uma ramificação ajustada, que pode desbloquear automaticamente todos os arquivos etc.
Consulte git-annex-Adjust (1) para obter detalhes.
direct
Muda um repositório para usar o modo direto. (descontinuada)
Veja git-annex-direct (1) para detalhes.
indirect
Alterna um repositório para usar o modo indireto. (descontinuada)
Veja git-annex-indirect (1) para detalhes.
COMANDOS DE MANUTENÇÃO DE REPOSITÓRIOS fsck [path ...]
Verifica a consistência do anexo e avisa ou corrige os problemas encontrados. Este é um bom complemento para git fsck.
Veja git-annex-fsck (1) para detalhes.
expire [repository:]time ...
Expira repositórios que não executaram recentemente uma atividade (como um fsck).
Veja git-annex-expire (1) para obter detalhes.
unused
Verifica o anexo em busca de dados que não correspondem a nenhum arquivo presente em qualquer tag ou filial e imprime uma lista numerada dos dados.
Veja git-annex-unused (1) para detalhes.
dropunused [number|range ...]
Elimina os dados correspondentes aos números, conforme listado na última git annex unused
Veja git-annex-dropunused (1) para detalhes.
addunused [number|range ...]
Adiciona arquivos antigos para o conteúdo correspondente aos números ou intervalos, conforme listado pelo último git annex unused.
Veja git-annex-addunused (1) para detalhes.
fix [path ...]
Corrige os links simbólicos que foram quebrados para apontar novamente para o conteúdo anexado.
Veja git-annex-fix (1) para detalhes.
merge
Mesclar automaticamente alterações de controles remotos.
Veja git-annex-merge (1) para detalhes.
upgrade
Atualiza o repositório para o layout atual.
Veja git-annex-upgrade (1) para detalhes.
dead [repository ...] [--key key]
Indica que um repositório ou uma única chave foi irremediavelmente perdida.
Veja git-annex-dead (1) para detalhes.
forget
Faz com que o ramo git-annex seja reescrito, descartando dados históricos sobre locais anteriores de arquivos.
Veja git-annex-forget (1) para detalhes.
repair
Isso pode reparar muitos dos problemas nos repositórios git que git fsck detectam, mas não corrigem por si só. É útil se um repositório ficar muito danificado. Uma maneira de isso acontecer é se um repositório usado pelo git-anexo estiver em uma unidade removível que seja desconectada no momento errado.
Veja git-annex-repair (1) para detalhes.
p2p
Configure links ponto a ponto entre repositórios.
Veja git-annex-p2p (1) para obter detalhes.
COMANDOS DE CONSULTA find [path ...]
Produz uma lista de arquivos anexados no caminho especificado. Sem caminho, localiza arquivos no diretório atual e seus subdiretórios.
Veja git-annex-find (1) para detalhes.
whereis [path ...]
Exibe informações sobre onde o conteúdo dos arquivos está localizado.
Veja git-annex-whereis (1) para detalhes.
list [path ...]
Exibe uma tabela de controles remotos que contém o conteúdo dos arquivos especificados. Isso é semelhante ao whereis, mas uma tela mais compacta.
Veja git-annex-list (1) para detalhes.
log [path ...]
Exibe o log de localização do arquivo ou arquivos especificados, mostrando cada repositório ao qual foram adicionados ("+") e removidos de ("-").
Veja git-annex-log (1) para detalhes.
info [directory|file|remote|uuid ...]
Exibe estatísticas e outras informações para o item especificado, que pode ser um diretório, um arquivo, um controle remoto ou o uuid de um repositório.
Quando nenhum item é especificado, exibe estatísticas e informações para o repositório como um todo.
Veja git-annex-info (1) para detalhes.
version
Mostra a versão do git-anexo, bem como informações sobre a versão do repositório.
Veja git-annex-version (1) para detalhes.
map
Gere mapa de repositórios.
Veja git-annex-map (1) para detalhes.
inprogress
Acesse arquivos enquanto estão sendo baixados.
Consulte git-annex-inprogress (1) para obter detalhes.
COMANDOS METADATA metadata [path ...]
O conteúdo de um arquivo anexo pode ter qualquer número de campos de metadados anexados a ele para descrevê-lo. Cada campo de metadados, por sua vez, pode ter qualquer número de valores.
Este comando pode ser usado para definir metadados ou mostrar os metadados atualmente configurados.
Veja git-annex-metadata (1) para detalhes.
view [tag ...] [field=value ...] [field=glob ...] [!tag ...] [field!=value ...]
Usa metadados para criar uma ramificação de exibição dos arquivos na ramificação atual e faz check-out da ramificação de exibição. Somente arquivos na ramificação atual cujos metadados correspondem a todos os valores e tags de campo especificados serão mostrados na exibição.
Veja git-annex-view (1) para detalhes.
vpop [N]
Muda da visualização atualmente ativa para a visualização anterior. Ou, da primeira exibição, de volta à ramificação original.
Veja git-annex-vpop (1) para detalhes.
vfilter [tag ...] [field=value ...] [!tag ...] [field!=value ...]
Filtra a exibição atual apenas para os arquivos que possuem os valores e tags de campo especificados.
Veja git-annex-vfilter (1) para detalhes.
vadd [field=glob ...] [field=value ...] [tag ...]
Altera a exibição atual, adicionando um nível adicional de diretórios para categorizar os arquivos.
Veja git-annex-vfilter (1) para detalhes.
vcycle
Quando uma exibição envolve subdiretórios aninhados, isso alterna a ordem.
Veja git-annex-vcycle (1) para detalhes.
COMANDOS DE UTILIDADE migrate [path ...]
Altera os arquivos anexados especificados para usar um back-end de valor-chave diferente.
Veja git-annex-migrate (1) para obter detalhes.
reinject src dest
Move o arquivo src para o anexo como o conteúdo do arquivo de destino. Isso pode ser útil se você obteve o conteúdo de um arquivo de outro local e deseja colocá-lo no anexo local.
Veja git-annex-reinject (1) para detalhes.
unannex [path ...]
Use isso para desfazer um git annex addcomando acidental . Ele coloca o arquivo de volta como estava antes da adição.
Veja git-annex-unannex (1) para obter detalhes.
uninit
Desinicialize o git-anexo e limpe o repositório.
Veja git-annex-uninit (1) para detalhes.
reinit uuid|description
Inicialize o repositório, reutilizando o UUID antigo.
Veja git-annex-reinit (1) para detalhes.
COMANDOS DE ENCANAMENTO pre-commit [path ...]
Isso deve ser chamado a partir do gancho de pré-confirmação do git. git annex init cria automaticamente um gancho de pré-confirmação usando isso.
Veja git-annex-pre-commit (1) para detalhes.
post-receive
Isso deve ser chamado a partir do gancho pós-recebimento do git. git annex init cria automaticamente um gancho pós-recebimento usando isso.
Veja git-annex-post-receive (1) para obter detalhes.
lookupkey [file ...]
Procura a chave usada para o arquivo.
Veja git-annex-lookupkey (1) para detalhes.
calckey [file ...]
Calcula a chave que seria usada para se referir a um arquivo.
Veja git-annex-calckey (1) para detalhes.
contentlocation [key ..]
Procura a localização do conteúdo em anexo para obter uma chave.
Veja git-annex-contentlocation (1) para obter detalhes.
examinekey [key ...]
Imprima informações que podem ser determinadas apenas olhando para a chave.
Veja git-annex-examinekey (1) para detalhes.
matchexpression
Verifica se uma expressão de conteúdo preferida corresponde aos dados fornecidos.
Veja git-annex-matchexpression (1) para obter detalhes.
fromkey [key file]
Configure manualmente um arquivo no repositório git para vincular a uma chave especificada.
Veja git-annex-fromkey (1) para detalhes.
registerurl [key url]
Registra um URL para uma chave.
Veja git-annex-registerurl (1) para detalhes.
setkey key file
Move um arquivo para o anexo como o conteúdo de uma chave.
Veja git-annex-setkey (1) para detalhes.
dropkey [key ...]
Elimina o conteúdo anexo de chaves especificadas.
Veja git-annex-dropkey (1) para detalhes.
transferkey key [--from=remote|--to=remote]
Transfere uma chave de ou para um controle remoto.
Veja git-annex-transferkey (1) para detalhes.
transferkeys
Usado internamente pelo assistente.
Veja git-annex-transferkey (1) para detalhes.
setpresentkey key uuid [1|0]
Esse comando no nível do encanamento altera os registros do git-anexo sobre se o conteúdo da chave especificada está presente em um controle remoto com o uuid especificado.
Veja git-annex-setpresentkey (1) para detalhes.
readpresentkey key uuid
Leia registros de onde a chave está presente.
Veja git-annex-readpresentkey (1) para detalhes.
checkpresentkey key remote
Verifique se a chave está presente no controle remoto.
Consulte git-annex-checkpresentkey (1) para obter detalhes.
rekey [file key ...]
Altere as teclas usadas para arquivos.
Veja git-annex-rekey (1) para detalhes.
resolvemerge
Resolve uma mesclagem conflitante, adicionando as duas versões conflitantes do arquivo à árvore, usando variantes de seus nomes de arquivos. Isso é feito automaticamente ao usar git annex syncou git annex merge.
Veja git-annex-resolvemerge (1) para detalhes.
diffdriver
Isso pode ser usado para git diffusar um driver diff externo com arquivos anexados.
Veja git-annex-diffdriver (1) para detalhes.
smudge
Este comando permite que o git-anexo seja usado como um driver de filtro git, permitindo que os arquivos anexados no repositório git sejam desbloqueados o tempo todo, em vez de serem links simbólicos.
Veja git-annex-smudge (1) para detalhes.
remotedaemon
Detecta quando os controles remotos da rede recebem push e busca do git.
Veja git-annex-remotedaemon (1) para detalhes.
findref [ref]
Lista arquivos em uma referência git. (descontinuada)
Veja git-annex-findref (1) para detalhes.
proxy -- git cmd [options]
Ignore a proteção do modo direto. (descontinuada)
Veja git-annex-proxy (1) para detalhes.
COMANDOS DE TESTE test
Isso executa o conjunto de testes interno do git-anexo.
Veja git-annex-test (1) para detalhes.
testremote remote
Isso testa um controle remoto gerando alguns objetos aleatórios e enviando-os para o controle remoto, depois baixando-os novamente, removendo-os do controle remoto etc.
É seguro executar em um repositório existente (o conteúdo do repositório não é alterado), embora possa executar transferências caras de dados.
Veja git-annex-testremote (1) para detalhes.
fuzztest
Gera alterações aleatórias nos arquivos no repositório atual, para uso no teste do assistente.
Veja git-annex-fuzztest (1) para detalhes.
benchmark
Isso executa os benchmarks internos do git-anexo, se ele foi construído com suporte a benchmarking.
Consulte git-annex-benchmark (1) para obter detalhes.
OPÇÕES COMUNS Essas opções comuns são aceitas por todos os comandos git-annex e não podem ser listadas explicitamente em suas páginas de manual individuais. (Muitos comandos também aceitam as opções de correspondência do git-anexo (1).)
--force
Forçar ações inseguras, como descartar o conteúdo de um arquivo quando não for possível verificar a existência de outra fonte, ou adicionar arquivos ignorados. Use com cuidado.
--fast
Habilite versões mais baratas, mas também menos completas, de alguns comandos. O que é evitado depende do comando.
--quiet
Evite a exibição detalhada padrão do que é feito; mostrar apenas erros.
--verbose
Ativar exibição detalhada.
--debug
Mostrar mensagens de depuração.
--no-debug
Desative mensagens de depuração.
--numcopies=n
Substitui a configuração de numcopies, forçando o git-anexo para garantir que o número especificado de cópias exista.
Observe que a definição de numcopies para 0 é muito insegura.
--time-limit=time
Limita quanto tempo um comando git-anexo é executado. O horário pode ser algo como "5h", "30m" ou mesmo "45s" ou "10d".
Observe que o git-anexo pode continuar executando um pouco além do prazo especificado, para concluir o processamento de um arquivo.
Além disso, observe que, se o limite de tempo impedir que o git-anexo faça tudo o que foi solicitado, ele sairá com um código especial, 101.
--trust=repository
--semitrust=repository --untrust=repository
Substitui as configurações de confiança de um repositório. Pode ser especificado mais de uma vez.
O repositório deve ser especificado usando o nome de um controle remoto configurado, ou o UUID ou a descrição de um repositório.
--trust-glacier
Os inventários do Amazon Glacier levam horas para serem recuperados e podem não representar o estado atual de um repositório. Portanto, o git-anexo não confia que os arquivos que as reivindicações de inventário estão no Glacier estão realmente lá. Essa opção pode ser usada para permitir confiar no inventário.
Tenha cuidado ao usar isso, especialmente se você ou outra pessoa tiver removido recentemente um arquivo do Glacier. Se você tentar soltar a única outra cópia do arquivo e essa opção estiver ativada, você poderá perder dados!
--backend=name
Especifica qual back-end de valor-chave usar. Isso pode ser usado ao adicionar um arquivo ao anexo ou ao migrar um arquivo. Depois que os arquivos estão no anexo, seu back-end é conhecido e essa opção não é necessária.
--user-agent=value
Substitui o User-Agent a ser usado ao baixar arquivos da web.
--notify-finish
Faz com que uma notificação da área de trabalho seja exibida após cada download e upload bem-sucedido de arquivo.
(Suportado apenas em algumas plataformas, por exemplo, Linux com dbus. No-op quando não suportado.)
--notify-start
Faz com que uma notificação da área de trabalho seja exibida quando um upload ou download de arquivo é iniciado ou quando um arquivo é descartado.
-c name=value
Substitui as definições de configuração do git. Pode ser especificado várias vezes.
CONFIGURAÇÃO ATRAVÉS .git / config Como outros comandos git, o git-annex é configurado via .git/config. Aqui estão todas as definições de configuração suportadas.
annex.uuid
Um UUID exclusivo para este repositório (definido automaticamente).
annex.backend
Nome do back-end de valor-chave padrão a ser usado ao adicionar novos arquivos ao repositório.
Isso é substituído pela configuração do anexo annex.backend nos arquivos .gitattributes e pela opção --backend.
(Isso costumava ser nomeado annex.backendse ainda será usado se definido.)
annex.securehashesonly
Configure como true para indicar que o repositório deve usar somente hashes criptograficamente seguros (SHA2, SHA3) e hashes não seguros (MD5, SHA1) para o conteúdo.
Quando isso estiver definido, o conteúdo dos arquivos que usam hashes criptograficamente inseguros não poderá ser adicionado ao repositório.
Além disso, o git-annex fsck` irá reclamar sobre quaisquer arquivos presentes no repositório que usem hashes inseguros.
Para configurar o comportamento em novos clones do repositório, isso pode ser definido em git-annex-config .
annex.maxextensionlength
Comprimento máximo do que é considerado uma extensão de nome de arquivo ao adicionar um arquivo a um back-end que preserva as extensões de nome de arquivo. O tamanho padrão é 4, o que permite extensões como "jpeg". O ponto antes da extensão não conta como parte de seu comprimento. No máximo duas extensões no final de um nome de arquivo serão preservadas, por exemplo, .gz ou .tar.gz.
annex.diskreserve
Quantidade de espaço em disco a reservar. O espaço em disco é verificado ao transferir o conteúdo para evitar a falta de espaço e espaço livre adicional pode ser reservado por meio dessa opção, para liberar espaço para o conteúdo mais importante (como logs de confirmação do git). Pode ser especificado com qualquer unidade usada com frequência, por exemplo, "0,5 gb", "500M" ou "100 KiloBytes"
A reserva padrão é de 1 megabyte.
annex.largefiles
Usado para configurar quais arquivos são grandes o suficiente para serem adicionados ao anexo. Padrão: todos os arquivos.
Substitui qualquer atributo annex.largefiles nos .gitattributesarquivos.
Consulte https://git-annex.branchable.com/tips/largefiles para obter detalhes.
annex.addsmallfiles
Controla se arquivos pequenos (que não correspondem aos arquivos anexo.large) devem ser verificados no git por git annex add. O padrão é true; defina como false para fazer com que arquivos pequenos sejam ignorados.
annex.addunlocked
Configure como true para fazer com que comandos como git-annex addesse adicionem arquivos ao repositório e adicione-os no formato desbloqueado. O padrão é adicionar arquivos no formato bloqueado. Isso tem efeito apenas nos repositórios v7.
Quando um repositório tem core.symlinks configurados como false, implicitamente define annex.addunlocked como true.
annex.numcopies
Essa é uma configuração descontinuada. Em vez disso, você deve usar o git annex numcopiescomando para configurar quantas cópias dos arquivos são mantidas em todos os repositórios ou a configuração em anexo.numcopies .gitattributes.
Essa configuração é vista apenas quando git annex numcopiesnunca foi configurada e quando não há nenhuma configuração em anexo.numcopies no arquivo .gitattributes.
Observe que a definição de numcopies para 0 é muito insegura.
annex.genmetadata
Configure isso para truefazer com que o git-annex gere automaticamente alguns metadados ao adicionar arquivos ao repositório.
Em particular, ele armazena metadados de ano, mês e dia, a partir da data de modificação do arquivo.
Quando o importfeed é usado, ele armazena metadados adicionais do feed, como autor, título etc.
annex.used-refspec
Este controla quais referências git-annex unusedconsidera ser usado. Consulte REFSPEC FORMAT em git-annex-unused (1) para obter detalhes.
`annex.jobs
Configure o número de trabalhos simultâneos a serem executados. O padrão é 1.
Somente comandos git-anexo que suportam a opção --jobs o usarão.
Definir isso como "cpus" executará um trabalho por núcleo da CPU.
annex.queuesize
O git-anexo constrói uma fila de comandos git, a fim de combinar comandos semelhantes para velocidade. Por padrão, o tamanho da fila é limitado a 10240 comandos; isso pode ser usado para alterar o tamanho. Se você tiver muita memória e estiver trabalhando com um número muito grande de arquivos, aumentar o tamanho da fila pode acelerar.
annex.bloomcapacity
Os comandos git annex unusede git annex sync --contentusam um filtro bloom para determinar em quais arquivos estão presentes, por exemplo, na árvore de trabalho. O filtro bloom padrão é dimensionado para lidar com até 500000 arquivos. Se o seu repositório for maior que isso, você deverá aumentar esse valor. Valores maiores criarão git-annex unusede git annex sync --contentconsumirão mais memória; execute git annex infopara números de uso de memória.
annex.bloomaccuracy
Ajusta a precisão do filtro de floração usado por git annex unusede git annex sync --content. A precisão padrão é 10000000 - um arquivo não utilizado de 10000000 será perdido git annex unused. Aumentar a precisão fará git annex unusedconsumir mais memória; execute git annex info para números de uso de memória.
annex.sshcaching
Por padrão, o git-anexo armazena em cache as conexões ssh usando as configurações ControlMaster e ControlPersist do ssh (se construídas usando um ssh novo o suficiente). Para desativar isso, defina como false.
annex.alwayscommit
Por padrão, o git-anexo confirma automaticamente os dados na ramificação do git-anexo após a execução de cada comando. Se você tiver uma série de comandos com os quais deseja fazer uma única confirmação, poderá executar os comandos com -c annex.alwayscommit=false. Posteriormente, você pode confirmar os dados executando git annex merge(ou mesclando automaticamente) ou git annex sync.
Você deve tomar cuidado git gcao executar esta configuração, pois ela pode coletar objetos que são armazenados no índice do git-anexo, mas ainda não confirmados.
annex.commitmessage
Quando o git-anexo atualiza o ramo git-anexo, ele geralmente cria sua própria mensagem de confirmação ("atualização"), pois os usuários raramente examinam ou se preocupam com as alterações nesse ramo. Se você se importa, pode especificar essa configuração executando comandos com -c annex.commitmessage=whatever
Isso funciona bem em combinação com annex.alwayscommit = false, para reunir um conjunto de alterações e confirmar com uma mensagem especificada.
annex.merge-annex-branches
Por padrão, as ramificações do git-anexo que foram extraídas dos controles remotos são automaticamente mescladas na ramificação local do git-anexo, para que o git-anexo tenha o conhecimento mais atualizado possível.
Para evitar essa mesclagem, defina isso como "false". Isso pode ser útil principalmente quando você não tem permissão de gravação no repositório.
annex.hardlink
Configure isso para truetornar o conteúdo do arquivo vinculado fisicamente entre o repositório e seus controles remotos, quando possível, em vez de uma cópia mais cara.
Use com cuidado - isso pode invalidar a contagem de cópias de número, pois com links físicos, pode haver menos cópias de um arquivo. Portanto, é uma boa idéia marcar um repositório usando essa configuração como não confiável.
Quando um repositório é configurado usando git clone --shared, o git-annex init define automaticamente o anexo.hardlink e marca o repositório como não confiável.
annex.thin
Defina isso para truetornar os arquivos desbloqueados um link físico para o conteúdo no anexo, em vez de uma segunda cópia. Isso pode economizar espaço em disco considerável, mas quando uma modificação é feita em um arquivo, você perde a cópia local (e possivelmente apenas) da versão antiga. Portanto, ative com cuidado.
Depois de definir (ou desarmar) isso, você deve executar git annex fixos arquivos anexados na árvore de trabalho para que sejam links físicos (ou cópias).
Observe que isso não tem efeito quando o sistema de arquivos não suporta links físicos. E quando vários arquivos na árvore de trabalho têm o mesmo conteúdo, apenas um deles fica vinculado ao anexo.
annex.delayadd
Faz com que os comandos do relógio e do assistente atrasem o número especificado de segundos antes de adicionar um arquivo recém-criado ao anexo. Normalmente, isso não é necessário, porque eles já esperam que todos os gravadores do arquivo fechem. No Mac OSX, o padrão é 1 segundo, para solucionar uma má interação com o software.
annex.expireunused
Controla o que o assistente faz sobre o conteúdo do arquivo não utilizado que é armazenado no repositório.
O padrão é falseque faz com que todo o conteúdo de arquivos antigos e não utilizados seja retido, a menos que o assistente possa movê-los para outro repositório (como um repositório de backup).
Pode ser definido como uma especificação de tempo, como "7d" ou "1m" e, em seguida, o conteúdo do arquivo conhecido como não utilizado por uma semana ou um mês será excluído.
annex.fscknudge
Quando definido como false, impede que o aplicativo da Web o lembre ao usar repositórios que não possuem verificações de consistência.
annex.autoupgrade
Quando configurado para perguntar (o padrão), o aplicativo da Web verifica novas versões e pergunta se elas devem ser atualizadas para. Quando definido como true, atualiza automaticamente sem aviso (em algumas plataformas suportadas). Quando definido como false, desativa qualquer verificação de atualização.
Observe que a verificação da atualização é feita apenas quando o git-anexo é instalado a partir de uma das imagens pré-construídas em seu site. Isso não ignora, por exemplo, o próprio código de manipulação de atualização de uma distribuição Linux.
Essa configuração também controla se é necessário reiniciar o assistente git-anexo quando o binário git-anexo for detectado como alterado. Isso é útil, não importa como você instalou o git-anexo.
annex.autocommit
Defina como false para impedir que o assistente git-anexo e a sincronização git-anexo anexem automaticamente alterações nos arquivos no repositório.
Para configurar o comportamento em todos os clones do repositório, isso pode ser definido em git-annex-config .
annex.resolvemerge
Configure como false para impedir que conflitos de mesclagem na ramificação com check-out sejam resolvidos automaticamente pelo assistente do git-anexo, sincronização do git-anexo, mesclagem do git-anexo e gancho de pós-recebimento do git-anexo.
Para configurar o comportamento em todos os clones do repositório, isso pode ser definido em git-annex-config .
annex.synccontent
Defina como true para tornar a sincronização do git-anexo padrão para sincronizar o conteúdo.
Para configurar o comportamento em todos os clones do repositório, isso pode ser definido em git-annex-config .
annex.startupscan
Configure como false para impedir que o assistente git-annex varra o repositório em busca de arquivos novos e alterados na inicialização. Isso impedirá que ele observe as alterações que foram feitas enquanto não estava em execução, mas pode ser um ajuste de desempenho útil para um repositório grande.
annex.listen
Configura em qual endereço o aplicativo da web ouve. O padrão é localhost. Pode ser um endereço IP ou um nome de host que resolve para o endereço desejado.
annex.debug
Configure como true para ativar o log de depuração por padrão.
annex.version
Manutenção automática e usada para automatizar atualizações entre versões.
annex.crippledfilesystem
Configure como true se o repositório estiver em um sistema de arquivos aleijado, como o FAT, que não suporta links simbólicos, hard links ou permissões unix. Isso é verificado automaticamente pelo "git annex init".
annex.pidlock
Normalmente, o git-anexo usa arquivos de bloqueio refinados para permitir que vários processos sejam executados simultaneamente, sem atrapalhar os outros. Isso funciona muito bem, a menos que você esteja usando o git-anexo em um sistema de arquivos que não suporta bloqueios POSIX fcntl. Às vezes, esse é o caso ao usar sistemas de arquivos NFS ou Luster.
Para dar suporte a essas situações, você pode definir o anexo.pidlock como true e ele voltará a um único bloqueio de arquivo pid de nível superior.
Embora, frequentemente, você realmente considere melhor corrigir a configuração do sistema de arquivos em rede para suportar bloqueios POSIX. E alguns sistemas de arquivos em rede são tão inconsistentes que um nó não pode dizer com segurança quando o outro nó está segurando um bloqueio pid. Advertência emptor.
annex.pidlocktimeout
Ao usar arquivos pid lock, é possível que um arquivo de bloqueio antigo seja deixado para trás pela execução anterior do git-anexo que travou ou foi interrompida. Isso é evitado principalmente, mas pode ocorrer principalmente ao usar um sistema de arquivos de rede.
O git-annex esperará até muitos segundos para que o arquivo pid lock desapareça e será abortado se não puder continuar. Padrão: 300
annex.cachecreds
Quando "true" (o padrão), o git-anexo armazenará em cache as credenciais usadas para acessar controles remotos especiais nos arquivos em .git / anexo / creds / que somente você pode ler. Para desabilitar esse cache, defina como "false", e as credenciais serão lidas apenas no ambiente ou, se tiverem sido incorporadas no formato criptografado no repositório git, serão extraídas e descriptografadas sempre que o git-annex precisar acessar o controle remoto. .
remote.
Ao determinar qual repositório transferir arquivos anexados de ou para, são preferidos aqueles com custos mais baixos. O custo padrão é 100 para repositórios locais e 200 para repositórios remotos.
remote.
Se definido, o comando é executado e o número que ele gera é usado como custo. Isso permite variar o custo com base, por exemplo, na rede atual.
remote.
Um comando para executar quando o git-anexo começar a usar o controle remoto. Isso pode ser usado para, por exemplo, montar o diretório que contém o controle remoto.
O comando pode ser executado repetidamente quando vários processos git-annex estão sendo executados simultaneamente.
remote.
Um comando para executar quando o git-anexo for concluído usando o controle remoto.
O comando será executado somente quando todos os processos em execução do git-anexo forem concluídos usando o controle remoto.
remote.
Especifique um executável git-annex-shell alternativo no controle remoto em vez de procurar "git-annex-shell" no PATH.
Isso é útil se o programa git-annex-shell estiver fora do PATH ou tiver um nome não padrão.
remote.
Se definido como true, evita que o git-anexo armazene o conteúdo do arquivo neste controle remoto por padrão. (Você ainda pode solicitar que seja usado pelas opções --frome --to.)
Isso é útil, por exemplo, se o controle remoto estiver localizado em algum lugar sem o git-annex-shell. (Por exemplo, se estiver no GitHub). Ou pode ser usado se a conexão de rede entre dois repositórios for muito lenta para ser usada normalmente.
Isso não impede que o git-anexo sync (ou o assistente do git-anexo) sincronize o repositório git com o controle remoto.
remote.
Se definido, o comando é executado e, se sair diferente de zero, é o mesmo que configurar annex-ignore como true. Isso permite controlar o comportamento com base, por exemplo, na rede atual.
remote.
Se definido como false, impede que a sincronização do git-anexo (e o assistente do git-anexo) sincronizem com este controle remoto por padrão. No entanto, git annex sync
remote.
Se definido, o comando é executado e, se sair diferente de zero, é o mesmo que configurar a sincronização do anexo como false. Isso permite controlar o comportamento com base, por exemplo, na rede atual.
remote.
Se definido como false, evita que a sincronização do git-anexo (e o assistente do git-anexo etc) sejam puxados (ou buscados) do controle remoto.
remote.
Se definido como false, evita que a sincronização do git-anexo (e o assistente do git-anexo etc) seja enviada para o controle remoto.
remote.
Se definido como true, impede que o git-anexo faça alterações em um controle remoto. Isso impede a sincronização do git-anexo de enviar alterações e também o armazenamento ou a remoção de arquivos do controle remoto somente leitura.
remote.
Por padrão, o git-anexo verifica as somas de verificação dos objetos baixados dos controles remotos. Se você confiar em um controle remoto e não querem a sobrecarga destas somas de verificação, você pode definir isso false.
Observe que, mesmo quando definido como false, o git-anexo verifica em alguns casos extremos, onde é provável que um objeto tenha sido baixado incorretamente ou quando necessário para segurança.
remote.
Isso é para uso com controles remotos especiais que suportam exportações e importações.
Quando definido como, por exemplo, "mestre", isso indica ao git-anexo que você deseja que o controle remoto especial rastreie esse ramo.
Quando definido como, por exemplo, "master: subdir", o controle remoto especial rastreia apenas o subdiretório desse ramo.
git-annex sync --contentimportará as alterações do controle remoto e as mesclará na filial de rastreamento do anexo. Eles também exportam as alterações feitas na filial para o controle remoto.
remote.
Nome descontinuado para remote.
remote.
Pode ser usado para especificar um URL diferente do normal remote.
remote.
O git-anexo armazena em cache UUIDs de repositórios remotos aqui.
remote.
Configure tentativas de transferências com falha em uma base remota e geral, respectivamente. O valor é o número de tentativas que podem ser feitas da mesma transferência. (padrão 0)
remote.
Número de segundos para atrasar antes da primeira tentativa de uma transferência. Ao fazer várias tentativas da mesma transferência, o atraso duplica após cada nova tentativa. (padrão 1)
remote.
Isso afeta apenas controles remotos que têm o URL apontando para um diretório no mesmo sistema. O git-anexo normalmente verifica o uuid de tais controles remotos toda vez que é executado, o que permite lidar de forma transparente com diferentes unidades montadas no local em momentos diferentes.
Definir annex-checkuuid como false impedirá que ele verifique o uuid na inicialização (embora o uuid ainda seja verificado antes de fazer alterações no repositório remoto). Pode ser útil configurar para impedir a rotação ou montagem desnecessária de uma unidade.
remote.
Configura um nível de confiança local para o controle remoto. Isso substitui o valor configurado pelos comandos de confiança e não confiança. O valor pode ser "confiável", "semitrustificado" ou "não confiável".
remote.
Pode ser usado para informar ao git-anexo se um controle remoto é LocallyAvailable ou GloballyAvailable. Normalmente, o git-anexo determina isso automaticamente.
remote.
Defina como "true" para fazer o git-annex especular que esse controle remoto pode conter o conteúdo de qualquer arquivo, mesmo que seu rastreamento de local normal não indique isso. Isso fará com que o git-anexo tente obter todo o conteúdo do arquivo do controle remoto. Pode ser útil na configuração de um controle remoto em cache.
remote.
Pode ser usado para informar ao git-anexo se um remoto é um repositório vazio ou não. Normalmente, o git-anexo determina isso automaticamente.
remote.
Opções a serem usadas ao usar o ssh para conversar com este controle remoto.
remote.
Opções a serem usadas ao usar o rsync para ou deste controle remoto. Por exemplo, para forçar o IPv6 e limitar a largura de banda a 100Kbyte / s, defina-o como-6 --bwlimit 100
Observe que o git-annex-shell possui uma lista de permissões de opções permitidas do rsync, e outras não serão passadas para o rsync remoto. Portanto, o uso de algumas opções pode interromper a comunicação entre os rsyncs locais e remotos.
remote.
Opções a serem usadas ao usar o rsync para fazer upload de um arquivo para um controle remoto.
Essas opções são passadas após outras opções rsync aplicáveis, e podem ser usadas para substituí-las. Por exemplo, para limitar a largura de banda de upload para 10Kbyte / s, defina --bwlimit 10.
remote.
Opções a serem usadas ao usar o rsync para baixar um arquivo de um controle remoto.
Essas opções são passadas após outras opções rsync aplicáveis, e podem ser usadas para substituí-las.
remote.
O shell remoto a ser usado para conectar-se ao controle remoto rsync. Os valores possíveis são ssh(o padrão) e rsh, juntamente com seus argumentos, por exemplo ssh -p 2222 -c blowfish; Observe que o nome do host remoto não deve aparecer lá, consulte rsync (1) para obter detalhes. Quando o transporte usado é ssh, as conexões são armazenadas em cache automaticamente, a menos que annex.sshcachingestejam desabilitadas.
remote.
Opções para passar para a divisão bup ao armazenar conteúdo neste controle remoto. Por exemplo, para limitar a largura de banda a 100Kbyte / s, defina-a como --bwlimit 100k (Não há opção correspondente para junção de bup).
remote.
Opções para passar para o GnuPG quando estiver criptografando dados. Por exemplo, para usar a cifra AES com uma chave de 256 bits e desativar a compactação, defina-a como --cipher-algo AES256 --compress-algo none. (Essas opções têm precedência sobre a configuração padrão do GnuPG, que é usada de outra forma.)
remote.
Opções para passar para o GnuPG quando descriptografar dados. (Essas opções têm precedência sobre a configuração padrão do GnuPG, que é usada de outra forma.)
annex.ssh-options, annex.rsync-options, annex.rsync-upload-options, annex.rsync-download-options, annex.bup-split-options, annex.gnupg-options, annex.gnupg-decrypt-options
Opções padrão a serem usadas se um controle remoto não tiver opções mais específicas, conforme descrito acima.
annex.web-options
Opções para passar a curl quando o git-annex o usa para baixar URLs (em vez do downloader de URL embutido padrão).
Por exemplo, para forçar apenas o IPv4, defina-o como "-4". Ou para fazer o curl usar o arquivo ~ / .netrc, defina-o como "--netrc".
A configuração dessa opção faz com que o git-anexo use curl, mas apenas quando o endereço anex.security.allowed-ip está configurado de uma maneira específica. Veja a documentação.
annex.youtube-dl-options
Opções para passar para o youtube-dl ao usá-lo para encontrar o URL para fazer o download de um vídeo.
Algumas opções podem interromper a integração do git-anexo com o youtube-dl. Por exemplo, a opção --output pode fazer com que ele armazene arquivos em algum lugar que o git-anexo não os encontre. Evite definir aqui ou no arquivo de configuração do youtube-dl qualquer opção que faça com que o youtube-dl baixe mais de um arquivo ou armazene o arquivo em qualquer lugar que não seja o diretório de trabalho atual.
annex.aria-torrent-options
Opções para passar para o aria2c ao usá-lo para baixar um torrent.
annex.http-headers
Cabeçalhos HTTP a serem enviados durante o download da web. É possível definir várias linhas dessa opção, uma por cabeçalho.
annex.http-headers-command
Se definido, o comando é executado e cada linha de sua saída é usada como um cabeçalho HTTP. Isso substitui o anexo.http-headers.
annex.security.allowed-url-schemes
Lista de esquemas de URL dos quais o git-annex pode baixar conteúdo. O padrão é "http https ftp".
Pense com muito cuidado antes de mudar isso; existem implicações de segurança. Por exemplo, se ele foi alterado para permitir URLs de "arquivo", qualquer pessoa que possa obter uma confirmação no seu repositório git-anexo pode git-annex addurlapontar para um arquivo privado localizado fora desse repositório, possivelmente fazendo com que ele seja copiado no seu repositório e transferido para para outros controles remotos, expondo seu conteúdo.
Alguns controles remotos especiais oferecem suporte a seus próprios esquemas de URL específicos do domínio; aqueles não são afetados por esta configuração.
annex.security.allowed-ip-addresses
Por padrão, o git-anexo apenas faz conexões com endereços IP públicos; ele se recusará a usar HTTP e outros servidores no host local ou em uma rede privada.
Essa configuração pode substituir esse comportamento, permitindo o acesso a endereços IP específicos. Por exemplo, "127.0.0.1 :: 1" permite acesso ao host local (IPV4 e IPV6). Para permitir o acesso a todos os endereços IP, use "all"
Pense com muito cuidado antes de mudar isso; existem implicações de segurança. Qualquer pessoa que possa obter um commit no seu repositório git-anexo pode fazer git annex addurlum URL em um servidor privado, possivelmente fazendo com que ele seja baixado no seu repositório e transferido para outros controles remotos, expondo seu conteúdo.
Observe que, como as interfaces do curl e do youtube-dl não permitem que essas restrições de endereço IP sejam aplicadas, o curl e o youtube-dl nunca serão usados, a menos que annex.security.allowed-ip-address = all.
annex.security.allowed-http-addresses
Nome antigo para annex.security.allowed-ip-address. Se definido, será tratado da mesma forma que o conjunto de endereços anexos.security.allowed-ip.
annex.security.allow-unverified-downloads
Por motivos de segurança, o git-anexo se recusa a baixar o conteúdo da maioria dos controles remotos especiais quando não pode verificar um hash para verificar se o conteúdo correto foi baixado. Isso afeta particularmente o download do conteúdo das chaves URL ou WORM, que não possuem hashes.
A melhor maneira de evitar problemas devido a isso é migrar arquivos para longe dessas chaves, antes que seu conteúdo alcance um controle remoto especial. Consulte git-annex-migrate (1).
Quando o conteúdo está disponível apenas em um controle remoto especial, você pode usar esta configuração para forçar o git-annex a fazer o download. Mas você faz isso por sua conta e risco, e é muito importante que você leia e compreenda as informações abaixo primeiro!
O download de conteúdo não verificado de controles remotos especiais criptografados é impedido, porque o controle remoto especial pode enviar outro conteúdo criptografado além do esperado, fazendo com que o git-anexo descriptografe os dados que você nunca fez check-in no git-anexo e correndo o risco de expor os dados descriptografados a controles remotos criptografados para os quais você envia conteúdo.
O download de conteúdo não verificado de controles remotos especiais externos (não criptografados) é impedido, porque eles podem seguir redirecionamentos http para servidores Web no host local ou em uma rede privada ou, em alguns casos, em um arquivo: /// url.
Se você decidir ignorar essa verificação de segurança, a melhor coisa a fazer é defini-la temporariamente enquanto estiver executando o comando que obtém o arquivo. O valor para definir a configuração é "ACKTHPPT". Por exemplo:
git -c annex.security.allow-unverified-downloads = Anexo ACKTHPPT obtém meu arquivo
Seria uma boa idéia verificar se ele também baixou o arquivo que você esperava.
remote.name.annex-security-allow-unverified-downloads
Configuração por remota de anexos.security.allow-unverified-downloads.
annex.secure-erase-command
Isso pode ser definido como um comando que deve ser executado sempre que o git-anexo remover o conteúdo de um arquivo do repositório.
Na linha de comando, o arquivo% é substituído pelo arquivo que deve ser apagado.
Por exemplo, para usar o comando wipe, defina-o como wipe -f %file.
remote.
Usado pelos controles remotos especiais do rsync, isso configura o local do repositório rsync a ser usado. Normalmente, isso é configurado automaticamente por git annex initremote, mas você pode alterá-lo, se necessário.
remote.
Usado pelos controles remotos especiais do bup, isso configura o local do repositório do bup a ser usado. Normalmente, isso é configurado automaticamente por git annex initremote, mas você pode alterá-lo, se necessário.
remote.
Usado pelos controles remotos especiais do ddar, isso configura o local do repositório ddar a ser usado. Normalmente, isso é configurado automaticamente por git annex initremote, mas você pode alterá-lo, se necessário.
remote.
Usado por controles remotos especiais do diretório, isso configura o local do diretório em que os arquivos anexados são armazenados para este controle remoto. Normalmente, isso é configurado automaticamente por git annex initremote, mas você pode alterá-lo, se necessário.
remote.
Usado para identificar controles remotos em dispositivos Android acessados via adb. Normalmente, isso é configurado automaticamente por git annex initremote.
remote.
Usado pelos controles remotos especiais adb, este é o diretório no dispositivo Android em que os arquivos são armazenados para este controle remoto. Normalmente, isso é configurado automaticamente por git annex initremote, mas você pode alterá-lo, se necessário.
remote.
Usado pelos controles remotos especiais adb, esse é o número de série do dispositivo Android usado pelo controle remoto. Normalmente, isso é configurado automaticamente git annex initremote, mas você pode alterá-lo, se necessário, por exemplo, ao atualizar para um novo dispositivo Android.
remote.
Usado para identificar controles remotos especiais do Amazon S3. Normalmente, isso é configurado automaticamente por git annex initremote.
remote.
Usado para identificar controles remotos especiais do Amazon Glacier. Normalmente, isso é configurado automaticamente por git annex initremote.
remote.
Usado para identificar controles remotos especiais do webdav. Normalmente, isso é configurado automaticamente por git annex initremote.
remote.
Usado para identificar controles remotos especiais de tahoe. Aponta para o diretório de configuração do tahoe.
remote.
Usado para identificar controles remotos especiais do gcrypt. Normalmente, isso é configurado automaticamente por git annex initremote.
É definido como "true" se este for um controle remoto gcrypt. Se o controle remoto gcrypt estiver acessível via ssh e tiver o git-annex-shell disponível para gerenciá-lo, será definido como "shell".
remote.
Usado para identificar controles remotos especiais do git-lfs. Normalmente, isso é configurado automaticamente por git annex initremote.
É definido como "true" se este for um controle remoto git-lfs.
remote.
Utilizado por controles remotos especiais e remotos especiais externos para gravar o tipo do controle remoto.
annex.tune.objecthash1, annex.tune.objecthashlower,annex.tune.branchhash1
Eles podem ser passados git annex initpara ajustar o repositório. Eles não podem ser alterados com segurança em um repositório em execução e nunca devem ser definidos na configuração global do git. Para detalhes, consulte https://git-annex.branchable.com/tuning/ .
CONFIGURAÇÃO ATRAVÉS .gitattributes O back-end de valor-chave usado ao adicionar um novo arquivo ao anexo pode ser configurado por tipo de arquivo por meio de .gitattributesarquivos. No arquivo, o annex.backendatributo pode ser definido como o nome do back-end a ser usado. Por exemplo, aqui está como usar o back-end WORM por padrão, mas o back-end SHA256E para arquivos ogg:
- annex.backend=WORM *.ogg annex.backend=SHA256E Existe um atributo anexo.largefiles; que é usado para configurar quais arquivos são grandes o suficiente para serem adicionados ao anexo. Consulte https://git-annex.branchable.com/tips/largefiles para obter detalhes.
A configuração de copias também pode ser configurada por tipo de arquivo por meio do annex.numcopiesatributo em .gitattributesarquivos. Isso substitui as configurações de outras copias. Por exemplo, isso faz com que duas cópias sejam necessárias para arquivos wav e 3 cópias para arquivos flac:
.wav annex.numcopies=2 .flac annex.numcopies=3 Observe que a definição de numcopies para 0 é muito insegura.
Essas configurações são respeitadas pelo git-anexo sempre que estão operando em um arquivo correspondente. No entanto, ao usar --all, --unused ou --key para especificar chaves para operar, o git-anexo está operando em chaves e não em arquivos, portanto, não respeitará as configurações de .gitattributes. Por esse motivo, o git annex numcopiescomando é útil para configurar um padrão global para numcopies.
Observe também que, ao usar modos de exibição, apenas o arquivo .gitattributes de nível superior é preservado no modo de exibição; portanto, outras configurações em outros arquivos não terão efeito.
ESTADO DE SAÍDA O anexo git, quando chamado como subcomando git, pode retornar os códigos de saída 0 ou 1 para obter sucesso ou falhas, ou, mais raramente, 127 ou 128 para determinadas falhas muito específicas. O próprio git-anexo deve retornar 0 em caso de sucesso e 1 em caso de falha, a menos que a --time-limit=timeopção seja atingida; nesse caso, ele retorna com o código de saída 101.
MEIO AMBIENTE Essas variáveis de ambiente são usadas pelo git-anexo quando configuradas:
GIT_WORK_TREE, GIT_DIR
Manipulados da mesma forma que são pelo git, consulte git (1)
GIT_SSH, GIT_SSH_COMMAND
Manipulado de maneira semelhante à descrita no git (1). A única diferença é que o git-anexo às vezes passa um parâmetro "-n" adicional a eles, como o primeiro parâmetro, para impedir que o ssh leia stdin. Como isso pode interromper os usos existentes dessas variáveis de ambiente que não esperam o parâmetro extra, você precisará definir GIT_ANNEX_USE_GIT_SSH=1para fazer com que o git-anexo os suporte.
Observe que a definição de uma dessas variáveis de ambiente evita que o git-annex ative automaticamente o cache de conexão ssh (consulte annex.sshcaching), portanto isso atrasará algumas operações com controles remotos sobre ssh. Depende de você ativar o cache de conexão ssh, se necessário; veja a documentação do ssh.
Além disso, annex.ssh-optionse remote.
Geralmente, é melhor configurar as opções desejadas através do arquivo ~ / .ssh / config ou definir annex.ssh-options.
GIT_ANNEX_VECTOR_CLOCK
Normalmente, as linhas de registro de data e hora do git-anexo nos arquivos de log confirmados na ramificação do git-anexo. Definir essa variável de ambiente como um número fará com que o git-anexo use isso em vez do número atual de segundos desde a época do UNIX. Observe que os segundos decimais são suportados.
Isso é fornecido apenas para usuários avançados que têm uma maneira melhor de saber qual confirmação é atual que o relógio local ou que precisam evitar a incorporação de carimbos de data / hora por motivos de política. O uso indevido dessa variável de ambiente pode confundir a contabilidade do git-anexo, às vezes de maneiras que git annex fscknão podem ser reparadas.
Alguns controles remotos especiais usam variáveis de ambiente adicionais para autenticação, etc. Por exemplo, AWS_ACCESS_KEY_ID e GIT_ANNEX_P2P_AUTHTOKEN. Consulte a documentação remota especial.
ARQUIVOS Esses arquivos são usados pelo git-anexo:
.git/annex/objects/no seu repositório git contém o conteúdo do arquivo anexo que está disponível no momento. Arquivos anexados no seu link simbólico para o conteúdo do repositório git.
.git/annex/ no seu repositório git contém outras informações de tempo de execução usadas pelo git-anexo.
~/.config/git-annex/autostart é uma lista de repositórios git para iniciar o assistente git-anexo.
.git/hooks/pre-commit-annex no seu repositório git será executado sempre que uma confirmação for feita na ramificação HEAD, seja por git commit, git-annex sync ou pelo assistente git-anexo.
.git/hooks/post-update-annexno seu repositório git será executado sempre que o ramo git-anexo for atualizado. Você pode executar esse gancho git update-server-infoao publicar um repositório git-anexo por http.
VEJA TAMBÉM Mais documentação do git-anexo está disponível em seu site, https://git-annex.branchable.com/
Se o git-anexo estiver instalado a partir de um pacote, uma cópia de sua documentação deverá ser incluída, por exemplo, em /usr/share/doc/git-annex/.
AUTOR Joey Hess id@joeyh.name
https://git-annex.branchable.com/
Aviso: convertido automaticamente em uma página de manual por mdwn2man. Edite com cuidado.
Adicione um comentário Links: devblog / forum de divisão da página de manual do dia 266-267 / Watch / assistant / webapp documentation / comment 1 adb377589dbae7fc91001df235c6b48e forum / share .git / annex / objects em vários repositórios em uma máquina / comentário 1 1606849eb13b6069394455297395dc30 forum / unlimited unexex forum / comment 1 0176d1d50bd62b113ff690346ba4161b git-annex-add git-annex-addunused git-annex-addurl git-annex- Adjust git-annex-assistant ... Última edição: há15 days and 4 hours ago