我如何看待分支branch_1和branch_2之间的差异?
当前回答
有两种方法可以查看两个分支之间的差异。这些命令将显示对每个分支中的文件所做的修改。
使用gitdiff命令查看git存储库中两个分支之间的差异。gitdiffbranch1 branch2将显示所有差异。如果要比较两个分支之间的特定文件,可以使用以下命令:git diff branch1 branch2路径/to/filegitlog命令还可以用于查看两个分支之间的差异。使用-left-right参数运行gitlog命令,并将两个分支进行如下比较:git-log—左右分支1…分支2
其他回答
转到一个分支(例如main),然后对另一个分支运行diff(例如branch2):
git checkout main
git diff branch2
您可以通过以下方式显示差异-数字差异b1…b2或者您可以使用-git日志b1.b2您可以使用-git-log--单线--图形--装饰--缩写提交b1…b2
有两种方法可以查看两个分支之间的差异。这些命令将显示对每个分支中的文件所做的修改。
使用gitdiff命令查看git存储库中两个分支之间的差异。gitdiffbranch1 branch2将显示所有差异。如果要比较两个分支之间的特定文件,可以使用以下命令:git diff branch1 branch2路径/to/filegitlog命令还可以用于查看两个分支之间的差异。使用-left-right参数运行gitlog命令,并将两个分支进行如下比较:git-log—左右分支1…分支2
有许多不同的方法来比较分支,这取决于您需要的特定用例。
很多时候,你想进行比较,因为有些东西坏了,你想看看发生了什么变化,然后修复它,在提交之前再看看发生了哪些变化。
就我个人而言,当我想看到差异时,我喜欢做什么:
git checkout branch_1 # checkout the oldest branch
git checkout -b compare-branch # create a new branch
git merge --no-commit --squash branch_2 # put files from the new branch in the working folder
git status # see file names that changes
git diff # see the content that changed.
使用此解决方案,您将看到diff,您也只能看到使用git状态的文件名,最重要的是,您可以在看到diff时执行branch_2(branch_2位于工作树上)。如果有什么东西坏了,你可以编辑文件并修复它。任何时候,你都可以再次键入gitstatus或gitdiff来查看从新编辑到branch_a的差异。
使用gitdiff。
git diff [<options>] <commit>..<commit> [--] [<path>…]
<commit>是一个分支名称、一个提交散列或一个简写符号引用。
示例:gitdiff abc123..def567,gitdiff HEAD。。原始/主。
这将在两个分支的尖端之间产生差异。如果你想找到他们共同祖先的差异来测试,你可以使用三个点而不是两个:
git diff <commit>...<commit>
要检查哪些文件不同,而不是内容如何不同,请仅使用--name:
git diff --name-only <commit>..<commit>
请注意,在<commit>中<commit>(双点)语法,点是可选的;以下是同义词:
git diff commit1 commit2
推荐文章
- 撤消git平分错误
- 使用.gitconfig配置diff工具
- 如何配置Mac OS X术语,使git有颜色?
- Visual Studio Code: .git文件夹/文件隐藏
- “node_modules”文件夹应该包含在git存储库中吗
- 为什么git-rebase给了我合并冲突,而我所做的只是压缩提交?
- 当我试图推到原点时,为什么Git告诉我“没有这样的远程‘原点’”?
- 如何从远程分支中挑选?
- 如何查看一个分支中的哪些提交不在另一个分支中?
- 如何取消在github上的拉请求?
- HEAD和master的区别
- GIT克隆在windows中跨本地文件系统回购
- RPC失败;卷度传输已关闭,剩余未完成的读取数据
- 我应该在.gitignore文件中添加Django迁移文件吗?
- 错误:您对以下文件的本地更改将被签出覆盖