リモートgit リポジトリの最後のコミット ID を取得したい。
このコマンドgit rev-parse HEAD
は、ローカルにクローンされた git リポジトリに対して機能しますが、元の GIT リポジトリから CURL コマンドなどで取得したいと考えています。
例: git URL https://git.appfactorypreview.wso2.com/history/apiapp.git/の最後のコミット ID を取得したい。
どのように?
リモートgit リポジトリの最後のコミット ID を取得したい。
このコマンドgit rev-parse HEAD
は、ローカルにクローンされた git リポジトリに対して機能しますが、元の GIT リポジトリから CURL コマンドなどで取得したいと考えています。
例: git URL https://git.appfactorypreview.wso2.com/history/apiapp.git/の最後のコミット ID を取得したい。
どのように?
このコマンドを試してください
git log --format="%H" -n 1
あなたが望むのはこれだと思います:
git ls-remote $URL HEAD
HEAD
リモートリポジトリに存在しない場合は、次のものが必要になる可能性があります。
git ls-remote $URL refs/heads/master
最初のインスタンスでHEAD
は、リポジトリでチェックアウトするデフォルトのブランチを指すことに注意してください。それが目的のブランチであることを確認するか、2 番目の形式を使用して目的のブランチを指定する必要があります (必要なrefs/heads/master
ブランチの名前に置き換えます: refs/heads/BRANCH_NAME
.
これに使えますgit ls-remote
。私は'Unauthorized access for repository apiapp.git'
torvalds linux-repo を例として使用します。
$ git ls-remote --heads git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
6d15ee492809d38bd62237b6d0f6a81d4dd12d15 refs/heads/master