如何查看本地分支和远程分支之间的diff
?
顺便提一下,您可以使用--compact-summary
选项。
man git diff
在diffstat中输出扩展头信息的简化摘要,例如文件创建或删除(“new”或“gone”,如果是符号链接,则为可选的“+l”)和模式更改(添加或删除可执行位的“+x”或“-x”)。 信息放置在文件名部分和图形部分之间。 意味着--stat。
例如:
git diff $(current_branch) origin/$(current_branch)
git diff origin/main $(git branch --show-current)
- SW_user2953243origin
设置为远程仓库。那么,运行以下命令:git diff <local branch> <origin>/<remote branch name>
git config alias.udiff 'diff @{u}'
git fetch # Do this if you want to compare with the network state of upstream; if the current local state is enough, you can skip this
git udiff
这回答了你标题中的问题(“它的远程”); 如果你想要与“一个远程”(未配置为该分支的上游)进行差异比较,你需要直接针对它。你可以使用以下命令查看所有远程分支:
git branch -r
你可以使用以下命令查看所有已配置的远程:
git remote show
你可以使用以下命令查看单个远程(例如 origin)的分支/跟踪配置:
git remote show origin
一旦确定了适当的源分支,就可以进行正常的差异比较 :)
git diff [MY_LOCAL] MY_REMOTE_BRANCH
File location: C:\Users\[username]\.gitconfig
以下是新增内容
[diff]
tool = bc
[difftool "bc"]
path = c:/Program Files/Beyond Compare 4/bcomp.exe
git difftool dev origin/dev --dir-diff
这将打开Beyond Compare并打开具有不同文件的目录。如果没有任何更改,Beyond Compare将不会启动。
git diff HEAD origin/HEAD
,但它似乎指向了一个与我预期不同的远程分支。使用完整的分支名称可以按预期工作。 - Deanna