Que novo formato? Você está usando Mercurial ou Git? Basta usar os clientes Mercurial ou Git para atualizar para uma versão antiga.
Erno
Respostas:
369
Entendo que você deseja fazer o download de uma versão mais antiga através da interface da Web BitBucket sem usar um cliente Mercurial / Git.
Verifique esta questão relacionada . Nos comentários, alguém diz que não há como fazer isso. Felizmente, isso não é totalmente verdade.
Navegando nas páginas do projeto BitBucket, não encontrei nenhum link para baixar uma versão arbitrária. Existem links para baixar tags específicas, no formato:
Posso usar o link acima no terminal do Android Studio para clonar uma confirmação? Se sim, você poderia fornecer o código básico do terminal?
tccpg288
1
Eu gostaria que eles mostrassem isso em seu site, por isso era óbvio.
rola
1
Por que isso não é relevante? Acabei de o testar novamente (06/08/2018) e ainda funciona. Talvez seja um problema com os servidores BitBucket "internos"? Eu testei isso no servidor bitbucket.org .
Rudy Matela
deveria ser api.bitbucket.orgagora #
Alexander Mills
1
Pode confirmar que ele ainda funciona com apenasbitbucket.org
Vely
202
Eu estava tentando descobrir se é possível procurar o código de um commit anterior como você pode no GitHub e isso me trouxe aqui. Usei as informações que encontrei aqui e, depois de mexer nos URLs, também encontrei uma maneira de navegar pelo código de confirmações antigas.
Quando você está navegando no seu código, o URL é algo como:
https://bitbucket.org/user/repo/src/
e adicionando um hash de confirmação no final como este:
https://bitbucket.org/user/repo/src/a0328cb
Você pode procurar o código no ponto desse commit. Não entendo por que não há uma caixa suspensa para escolher um commit diretamente, o recurso já está lá. Estranho.
Isso é exatamente o que eu precisava. Um link direto do site da Bitbucket para este URL está faltando.
Johnny Oshika
Infelizmente, isso não funciona. Ou melhor, trabalho, mas parcialmente. Por exemplo, você pode navegar, https://bitbucket.org/lyro/evil/src/8cbfd51mas se você entrar hg clone https://bitbucket.org/lyro/evil/src/8cbfd51, receberá uma revisão aleatória, talvez a mais recente.
Hi-Angel
Encontrado uma solução, éhg clone -r8cbfd51 https://bitbucket.org/lyro/evil/src/
Hi-Angel
3
Para quem não gosta de copiar e colar: navegue até um determinado commit, o URL será algo parecido https://bitbucket.org/user/project/commits/0000000000000000000000000000000000000000?at=master. Agora, basta alterar commitso URL para srce você está navegando na fonte completa neste commit!
@ManojG Aqui está um de mim. Então, aparentemente, há uma maneira de chegar à árvore inteira em um determinado commit, embora de uma maneira bastante confusa.
Malcolm
2
AMO ESTA RESPOSTA. Nota: você também pode acessar o arquivo e usar a lista suspensa. OBRIGADO!
Mattdlockyer # 24/16
3
Mais surpreendente do que esta resposta é o fato de que não podemos fazê-lo com o clique de um botão ... algumas coisas são realmente incríveis ...
Nuno Gonçalves
esta etapa não resolveu para mim, o que deu resultados: a resposta de @mattdlockyer, selecione um arquivo, clique no menu suspenso, selecione um commit mais antigo e retorne ao link base do repo como a última imagem do post do oscar
user2582318
1
Tudo isso funciona, mas quando o download é sempre o último commit. Estou fazendo errado ou é assim?
Jay Mehta
29
Caso alguém esteja no meu barco, onde nenhuma dessas respostas funcionou exatamente, eis o que eu fiz.
Talvez o nosso servidor Bitbucket interno esteja configurado de maneira um pouco diferente da maioria, mas aqui está a URL que eu normalmente acessaria apenas para exibir os arquivos no ramo mestre:
Este foi facilmente o caminho mais simples a seguir. Para aqueles que não conseguiram obter problemas de tags, clique em um commit específico e, no canto superior direito, você verá a fonte, o ramo, o commit e as tags. Adicione sua tag e vá para o download.
PGMacDesign 7/11
8
Para o registro, você também pode brincar com URLs desta maneira:
Ao navegar na fonte mais recente, você tem algo como:
https://bitbucket.org/my/repo/src/latestcommithash/my.file?at=master
Simplesmente altere o hash de confirmação e remova o parâmetro GET:
https://bitbucket.org/my/repo/src/wantedcommithash/my.file
Cheguei a +1 em Hein A. Grønnestad acima: está tudo funcionando, realmente me perguntando por que não há nada na GUI para usá-lo.
Respostas:
Entendo que você deseja fazer o download de uma versão mais antiga através da interface da Web BitBucket sem usar um cliente Mercurial / Git.
Verifique esta questão relacionada . Nos comentários, alguém diz que não há como fazer isso. Felizmente, isso não é totalmente verdade.
Navegando nas páginas do projeto BitBucket, não encontrei nenhum link para baixar uma versão arbitrária. Existem links para baixar tags específicas, no formato:
Mas, ajustando um pouco a URL acima, alterando o nome da tag pelo hash de confirmação, como:
Você pode realmente baixar uma versão específica.
Como mencionado por Rakka Rage em um comentário, substituindo
.tar.gz
por.zip
obras também.fonte
api.bitbucket.org
agora #bitbucket.org
Eu estava tentando descobrir se é possível procurar o código de um commit anterior como você pode no GitHub e isso me trouxe aqui. Usei as informações que encontrei aqui e, depois de mexer nos URLs, também encontrei uma maneira de navegar pelo código de confirmações antigas.
Quando você está navegando no seu código, o URL é algo como:
e adicionando um hash de confirmação no final como este:
Você pode procurar o código no ponto desse commit. Não entendo por que não há uma caixa suspensa para escolher um commit diretamente, o recurso já está lá. Estranho.
fonte
https://bitbucket.org/lyro/evil/src/8cbfd51
mas se você entrarhg clone https://bitbucket.org/lyro/evil/src/8cbfd51
, receberá uma revisão aleatória, talvez a mais recente.hg clone -r8cbfd51 https://bitbucket.org/lyro/evil/src/
https://bitbucket.org/user/project/commits/0000000000000000000000000000000000000000?at=master
. Agora, basta alterarcommits
o URL parasrc
e você está navegando na fonte completa neste commit!Passo 1
Passo 2
etapa 3
Passo 4
Passo final
fonte
Caso alguém esteja no meu barco, onde nenhuma dessas respostas funcionou exatamente, eis o que eu fiz.
Talvez o nosso servidor Bitbucket interno esteja configurado de maneira um pouco diferente da maioria, mas aqui está a URL que eu normalmente acessaria apenas para exibir os arquivos no ramo mestre:
Se eu selecionar uma ramificação diferente da master no menu suspenso, obtenho o seguinte:
Então, eu tentei fazer isso e funcionou:
Agora posso procurar o repositório inteiro como estava no momento da confirmação.
fonte
Ótimas respostas de alguns anos atrás. Agora, o Bitbucket tornou mais fácil.
Marque o Commit que você deseja baixar (conforme mencionado na resposta de Rudy Matela).
Então vá para Downloads e clique na guia "Tags" e você terá várias opções para download.
fonte
Para o registro, você também pode brincar com URLs desta maneira:
Ao navegar na fonte mais recente, você tem algo como:
https://bitbucket.org/my/repo/src/latestcommithash/my.file?at=master
Simplesmente altere o hash de confirmação e remova o parâmetro GET:
https://bitbucket.org/my/repo/src/wantedcommithash/my.file
Cheguei a +1 em Hein A. Grønnestad acima: está tudo funcionando, realmente me perguntando por que não há nada na GUI para usá-lo.
fonte
A maneira mais fácil é clicar nessa confirmação e adicionar uma tag a essa confirmação. Eu incluí a tag 'last_commit' nesta confirmação
Em seguida, vá para downloads no canto esquerdo da navegação lateral no bloco de bits. Clique no download no lado esquerdo
fonte
Você pode visualizar a origem do arquivo até uma confirmação específica, acrescentando
?until=<sha-of-commit>
a URL (após o nome do arquivo).fonte
Eu sei que é tarde demais, mas com a API 2.0 você pode fazer
da linha de comando com:
ou em php com:
então você tem o histórico do seu arquivo (da confirmação mais recente à mais antiga):
onde
values
>links
>self
fornece o arquivo no momento na história que você pode recuperá-la comcurl <link>
oufile_get_contents(<link>)
.Eventualmente, na linha de comando, você pode filtrar com:
em php, basta fazer um
foreach
loop na matriz$data
.Nota: se
<path_file>
tiver um,/
você deve convertê-lo%2F
.Consulte o documento aqui: https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Busername%7D/%7Brepo_slug%7D/filehistory/%7Bnode%7D/%7Bpath%7D
fonte