git - 使用 Git 如何查找本地和远程之间的更改

标签 git mercurial

这是两个不同的问题,但我认为它们是相关的。

  1. 使用 Git 时,如何找到我在本地提交但尚未推送到远程分支的更改?我正在寻找类似于 Mercurial 命令 hg outgoing 的东西。

  2. 使用 Git 时,如何在 pull 之前找到远程分支的更改?我正在寻找类似于 Mercurial 命令 hg incoming 的东西。

第二个:有没有办法查看可用的内容,然后挑选我想要 pull 的更改?

最佳答案

从 Git 1.7.0 开始,有一种特殊语法允许您通用地引用上游分支:@{u}@{upstream}

模仿hg传入:

git log ..@{u}

模仿hg 传出:

git log @{u}..

我使用以下 incomingoutgoing 别名来使上面的内容更易于使用:

git config --global alias.incoming '!git remote update -p; git log ..@{u}'
git config --global alias.outgoing 'log @{u}..'

关于git - 使用 Git 如何查找本地和远程之间的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/231211/

相关文章:

git-http-后端

git - 为什么git在这个git push中要push到两个分支?

Git:是否有等同于 hg strip 的东西?

mercurial - 为什么 hg commit 创建一个新头?

mercurial - 如何在 Mercurial 中仅列出我的传出更改?

git - 为什么我的 "git rebase master"在最后一次 merge 后返回的提交比 "normal"多?

git - 我可以为多个不同的本地位置拥有一个存储库吗

git - 对特定提交使用 git filter-branch

mercurial - 如何在 Mercurial 上进行 "rollback"上次提交?

mercurial - 将我的 Mercurial 存储库移至中央服务器,使我的存储库成为克隆