新しいビットバケット形式で古いコミットのソースにアクセスする方法に関するドキュメントを理解または見つけることができません。これはもう可能ですか?
12 に答える
Mercurial/Gitクライアントを使用せずにBitBucketWebインターフェイスから古いバージョンをダウンロードしたいとのことですが。
この関連する質問を確認してください。コメントで、誰かがそれをする方法はないと言います。幸いなことに、それは完全に真実ではありません。
BitBucketプロジェクトページをナビゲートしたところ、任意のバージョンをダウンロードするためのリンクが見つかりませんでした。次の形式で特定のタグをダウンロードするためのリンクがあります。
https://bitbucket.org/owner/repository/get/v0.1.2.tar.gz
ただし、上記のURLを少し調整して、次のようにコミットハッシュでタグ名を変更します。
https://bitbucket.org/owner/repository/get/A0B1C2D.tar.gz
実際に特定のバージョンをダウンロードできます。
Rakka Rageがコメントで述べたように、置換も機能.tar.gz
し.zip
ます。
GitHubでできるように、以前のコミットのコードを参照できるかどうかを調べようとしていたところ、ここに移動しました。ここで見つけた情報を使用し、URLをいじった後、実際に古いコミットのコードを参照する方法も見つけました。
コードを参照しているときのURLは次のようになります。
https://bitbucket.org/user/repo/src/
そして最後に次のようにコミットハッシュを追加します:
https://bitbucket.org/user/repo/src/a0328cb
そのコミットの時点でコードを参照できます。コミットを直接選択するためのドロップダウンボックスがない理由がわかりません。この機能はすでに存在します。変。
これらの答えのどれも正確に機能しなかった誰かが私のボートにいる場合に備えて、これが私がしたことです。
おそらく、社内のBitbucketサーバーのセットアップは他のサーバーとは少し異なりますが、マスターブランチのファイルを表示するためだけに通常アクセスするURLは次のとおりです。
https://<BITBUCKET_URL>/projects/<PROJECT_GROUP>/repos/<REPO_NAME>/browse
ドロップダウンメニューからマスターとは異なるブランチを選択すると、次のようになります。
https://<BITBUCKET_URL>/projects/<PROJECT_GROUP>/repos/<REPO_NAME>/browse?at=refs%2Fheads%2F<BRANCH_NAME>
だから私はこれをやってみました、そしてそれはうまくいきました:
https://<BITBUCKET_URL>/projects/<PROJECT_GROUP>/repos/<REPO_NAME>/browse?at=<COMMIT_ID>
これで、コミット時のリポジトリ全体を参照できます。
記録のために、この方法でURLをいじることもできます:
最新のソースを閲覧すると、次のようなものがあります。
https://bitbucket.org/my/repo/src/latestcommithash/my.file?at=master
コミットハッシュを変更し、GETパラメータを削除するだけです。
https://bitbucket.org/my/repo/src/wantedcommithash/my.file
上記の+1@HeinA.Grønnestadにアクセスしました。すべて機能しており、GUIに使用するものがないのはなぜか疑問に思っています。
?until=<sha-of-commit>
URL(ファイル名の後に)を追加することにより、特定のコミットまでのファイルのソースを表示できます
。
最も簡単な方法は、そのコミットをクリックして、そのコミットにタグを追加することです。 このコミットにはタグ「last_commit」を含めました
ビットバケットのサイドナビゲーションの左隅にあるダウンロードに移動するよりも。 左側のダウンロードをクリックします
- 次に、ナビゲーションバーのタグをクリックして、UIからzipをダウンロードします。 タグを見つけてzipをダウンロードします
手遅れだとは思いますが、API2.0を使えば
コマンドラインから:
curl https://api.bitbucket.org/2.0/repositories/<user>/<repo>/filehistory/<branch>/<path_file>
またはphpで:
$data = json_decode(file_get_contents("https://api.bitbucket.org/2.0/repositories/<user>/<repo>/filehistory/<branch>/<path_file>", true));
次に、ファイルの履歴(最新のコミットから最も古いコミットまで)があります。
{
"pagelen": 50,
"values": [
{
"links": {
"self": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/src/<hash>/<path_file>"
},
"meta": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/src/<HEAD>/<path_file>?format=meta"
},
"history": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/filehistory/<HEAD>/<path_file>"
}
},
"commit": {
"hash": "<HEAD>",
"type": "commit",
"links": {
"self": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/commit/<HEAD>"
},
"html": {
"href": "https://bitbucket.org/<user>/<repo>/commits/<HEAD>"
}
}
},
"attributes": [],
"path": "<path_file>",
"type": "commit_file",
"size": 31
},
{
"links": {
"self": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/src/<HEAD~1>/<path_file>"
},
"meta": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/src/<HEAD~1>/<path_file>?format=meta"
},
"history": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/filehistory/<HEAD~1>/<path_file>"
}
},
"commit": {
"hash": "<HEAD~1>",
"type": "commit",
"links": {
"self": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/commit/<HEAD~1>"
},
"html": {
"href": "https://bitbucket.org/<user>/<repo>/commits/<HEAD~1>"
}
}
},
"attributes": [],
"path": "<path_file>",
"type": "commit_file",
"size": 20
}
],
"page": 1
}
ここで、values
>>は、またはで取得できる履歴内の現時点でのファイルを提供しlinks
ます。self
curl <link>
file_get_contents(<link>)
最終的に、コマンドラインから次のようにフィルタリングできます。
curl https://api.bitbucket.org/2.0/repositories/<user>/<repo>/filehistory/<branch>/<path_file>?fields=values.links.self
phpではforeach
、配列でループを作成するだけ$data
です。
注:<path_file>
がある場合は、/
に変換する必要があります%2F
。
こちらのドキュメントをご覧ください:https ://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Busername%7D/%7Brepo_slug%7D/filehistory/%7Bnode%7D/%7Bpath%7D
BitBucketWebサイトで表示できます
Atlassianコミュニティサイトで説明されているように、Source
ページ(左側のメニューから利用可能)に移動しat=
、URLのクエリパラメータにコミットIDを入力するだけで十分です。したがって、たとえば、URLはで終わり?at=bacf2ad3095
ます。
長い間それを検索し、そして最後に、私はそれを行う方法を見つけました:)
手順を説明するこの画像を確認してください。
AtlassianBitbucketv6.10の私の場合
https://<bitbucket.myserver.it>/projects/<myproject>/repos/<myrepo>/browse?at=<full-commit-hash>