获取GIT头部遥控器
我对Git有点陌生,我必须比较lokal分支和远程分支的头部 在lokal分支上,我通过以下命令获得头部:获取GIT头部遥控器,git,github,Git,Github,我对Git有点陌生,我必须比较lokal分支和远程分支的头部 在lokal分支上,我通过以下命令获得头部: git rev-parse --short HEAD root@debian:xxxx# git rev-parse --short HEAD 469xxx 但是我怎样才能得到一个遥远的分支的短头呢? 例如: https://github.com/openssl/openssl 最新的短头是“cded951” 在我的例子中,获取头部并进行比较就可以了 If local HEAD !=
git rev-parse --short HEAD
root@debian:xxxx# git rev-parse --short HEAD
469xxx
但是我怎样才能得到一个遥远的分支的短头呢?
例如:
https://github.com/openssl/openssl
最新的短头是“cded951”
在我的例子中,获取头部并进行比较就可以了
If local HEAD != remote HEAD do xyz
对于这项检查,我需要我的github分支的远程头
致以最良好的祝愿:)
解决方案:
git remote update
if ! git diff --quiet origin/master; then
echo "the branch is different!"
else
echo "the branch is equal!"
fi
在远程分支的本地副本上运行
rev parse
git fetch
git rev-parse --short origin/master
在远程分支的本地副本上运行
rev parse
git fetch
git rev-parse --short origin/master
要检查您的本地分支是否与关联的远程跟踪分支不同(假设您在
主分支上):
你也可以写:
git diff --quiet @{u}
其中,@{u}
指的是远程跟踪分支,因此这适用于跟踪远程分支的任何本地分支。要检查您的本地分支是否与关联的远程跟踪分支不同(假设您在主分支上):
你也可以写:
git diff --quiet @{u}
其中,@{u}
指的是远程跟踪分支,因此这适用于跟踪远程分支的任何本地分支。您是否尝试过git diff local_branch origin/remote_branch
?git仅在本地存储库上运行。如果您需要有关远程分支的信息,请首先克隆存储库,然后正常使用git rev parse
(请注意,对于github上托管的存储库,您可以使用获取该信息)哦,这是“远程存储库”的分支,我想我误解了这个问题^^^让我解释一下:我将我的回购协议克隆到了我的VPS,但现在我需要知道本地头是否与远程头相同。如果在远程分支上有提交,则头是不同的。我尝试了git diff xyzscript,但我得到了:“错误:无法访问'xyz”您是否尝试过git diff local_branch origin/remote_branch
?git仅在本地存储库上运行。如果您需要有关远程分支的信息,请首先克隆存储库,然后正常使用git rev parse
(请注意,对于github上托管的存储库,您可以使用获取该信息)哦,这是“远程存储库”的分支,我想我误解了这个问题^^^让我解释一下:我将我的回购协议克隆到了我的VPS,但现在我需要知道本地头是否与远程头相同。如果在远程分支上有提交,则头是不同的。我尝试了git diff xyzscript,但我得到了:“错误:无法访问'xyz'”是的,看起来不错!但在尝试之后,我得到了这个错误:致命的:需要一个单一的修改是的,看起来不错!但在尝试之后,我得到了一个错误:致命的:需要一个单一的修改谢谢你这么多,检查对我来说确实有效!我将用您的代码片段编辑我的问题,如果您觉得合适的话?:)如果这解决了您的问题,那么要做的事情是通过勾选答案旁边的复选标记将其标记为已接受的答案。没有必要更新您的问题。非常感谢您,该检查对我有效!我将用您的代码片段编辑我的问题,如果您觉得合适的话?:)如果这解决了您的问题,那么要做的事情是通过勾选答案旁边的复选标记将其标记为已接受的答案。没有必要更新您的问题。