获取GIT HEAD遥控器

时间:2017-12-08 13:16:19

标签: git github

我是Git的新手,我必须将lokal分支的HEAD与远程分支进行比较。

在lokal分支上,我使用以下命令获取HEAD:

git rev-parse --short HEAD

root@debian:xxxx# git rev-parse --short HEAD
469xxx

但是如何获得远程分支的短HEAD? 例如:

https://github.com/openssl/openssl

最新的HEAD是" cded951"

就我而言,获取HEAD并进行比较就可以了。

If local HEAD != remote HEAD do xyz

对于这个检查,我需要我的github分支的远程HEAD。

最好的问候:)

解决方案:

git remote update
if ! git diff --quiet origin/master; then
    echo "the branch is different!"
else
    echo "the branch is equal!"
fi

2 个答案:

答案 0 :(得分:1)

在远程分支的本地副本上运行rev-parse

git fetch
git rev-parse --short origin/master

答案 1 :(得分:1)

检查您的本地分支是否与关联的远程跟踪分支不同(假设您在master分支上):

git remote update
if ! git diff --quiet origin/master; then
    echo "the branch is different!"
fi

你也可以写:

git diff --quiet @{u}

@{u}指的是远程跟踪分支,因此这适用于跟踪远程分支的任何本地分支。