How to get the last commit ID of a remote repo using curl-like command?
try this command
git log --format="%H" -n 1
I think what you want is this:
git ls-remote $URL HEAD
If HEAD
doesn't exist in the remote repository, then you likely want:
git ls-remote $URL refs/heads/master
Note that in the first instance, HEAD
is going to point to the default branch to checkout in the repository. You need to be sure that's the branch you want, or just use the second form and specify the one you want (replace refs/heads/master
with the name of the branch you want: refs/heads/BRANCH_NAME
.
Another way, without using git log:
git rev-parse HEAD
You can use git ls-remote
for this. Because I get a 'Unauthorized access for repository apiapp.git'
I use as example torvalds linux-repo.
$ git ls-remote --heads git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
6d15ee492809d38bd62237b6d0f6a81d4dd12d15 refs/heads/master
The short hash of the last commit id is much more human readable (read: user friendly). For posterity, two ways to get the short hash of the last commit id:
git rev-parse --short HEAD
OR
git log -n1 --format="%h"