Fossil-SCM Extraindo apenas um arquivo específico
-
21-12-2019 - |
Pergunta
Eu estava tentando extrair apenas um arquivo específico do scm fóssil, mas a única resposta que recebi foi
Fossil internal error: repository does not exist or is in an unreadable directory: blahblah
os comandos que tentei usar foram
fossil pull "file" -R "http://user@ip/folder/to/fossil"
fossil pull "" -R "http://user@ip/folder/to/fossil/file"
Não entendo a documentação.Se eu quisesse apenas baixar um arquivo específico sem abrir e clonar o repositório, como faria isso?
Solução
Você não pode puxar um único arquivo de um servidor fóssil.O pull recupera TODAS as (novas) alterações no repositório remoto para o seu repositório local.É a parte lida do sync
comando e requer que você tenha clonado o repositório primeiro.(O -R
opção de linha de comando sempre indica um local repositório).
Mas parece-me que o que você quer é simplesmente download um arquivo específico do repositório remoto.Para fazer isso, basta usar seu navegador para navegar no site do servidor fóssil (estou usando o repositório de código-fonte do próprio Fossil como exemplo):
http://fossil-scm.org/fossil/dir?ci=trunk
http://fossil-scm.org/fossil/tree?ci=trunk
e clique no arquivo desejado.Na página que exibe o arquivo, há um Download
botão que permitirá que você baixe a versão desse arquivo específico.
Se o arquivo não for texto ou HTML, você pode simplesmente fazer o download do arquivo usando http, usando o chamado documentação URL:
http://<server>/doc/<version>/<path-to-file>
Por exemplo, digamos que você queira baixar o trunk
versão do arquivo www/concept1.gif
do repositório principal de fósseis.Isso pode ser conseguido baixando o seguinte URL:
http://fossil-scm.org/fossil/doc/trunk/www/concept1.gif
Esse URL é composto da seguinte forma:
http://fossil-scm.org/fossil
é a localização do repositório;/doc/
indica que você deseja acessar diretamente os arquivos do repositório;trunk
indica o check-in que você deseja acessar.Também pode ser um identificador de check-in (como e319e8e870) ou uma tag (como revisão pendente).Se você especificar uma tag ou nome de branch, você obterá o arquivo associado ao último check-in com essa tag, respectivamente naquele branch;/www/concept1.gif
é o caminho dentro do repositório para o arquivo que você deseja acessar.
Observação que se o arquivo que você solicitou for uma página wiki, de texto ou HTML, o fossil adicionará seu cabeçalho e rodapé a ele.