如何区分本地分支和远程分支?
当前回答
让您的工作分支是开发分支,并且您希望区分本地开发分支和远程开发分支。在这种情况下,语法应该是这样的:
git diff remotes/origin/development..development
Or
git fetch origin
git diff origin/development
其他回答
我就是这么做的。
# To update your local.
git fetch --all
这将从远程获取所有内容,因此当您检查difference时,它将与远程分支进行比较。
# To list all branches
git branch -a
上面的命令将显示所有的分支。
# To go to the branch you want to check difference
git checkout <branch_name>
# To check on which branch you are in, use
git branch
(or)
git status
现在,您可以检查如下差异。
git diff origin/<branch_name>
这将比较您的本地分支和远程分支。
简单的方法:
git fetch
git log -p HEAD..FETCH_HEAD
这将首先从默认远程(origin)获取更改。这将在克隆存储库时自动创建。你也可以显式:git fetch origin master。
然后git log用来比较你当前的分支和刚刚获取的分支。(-p(生成补丁)选项显示了差异。)
第一个类型
git branch -a
获取可用分支的列表。在输出中,您可能会看到如下内容
* master
remotes/main/master
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/mt
remotes/upstream/master
remotes/upstream/mt
然后显示差异
git diff --stat --color remotes/main/master..origin/master
git diff remotes/main/master..origin/master
git difftool <commit> .
这将比较您想要的提交和您的本地文件。不要忘记最后的点(本地)。
例如,比较你的本地文件和一些提交:
git difftool 1db1ef2490733c1877ad0fb5e8536d2935566341 .
(并且你不需要git fetch,除非需要与new commit进行比较)
要更新远程跟踪分支,你需要先输入git fetch,然后:
git diff <mainbranch_path> <remotebranch_path>
您可以git branch -a列出所有分支(本地和远程),然后从列表中选择分支名称(只需从远程分支名称中删除remotes/即可)。
例如:git diff main origin/main(其中“main”是本地主分支,“origin/main”是远程分支,即原点和主分支。)
推荐文章
- 如何撤消最后的git添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- Git与Mercurial仓库的互操作性
- 忽略git中修改(但未提交)的文件?
- “git restore”命令是什么?“git restore”和“git reset”之间有什么区别?
- Git合并与强制覆盖
- Git拉另一个分支
- 在Bash命令提示符上添加git分支
- 如何更改Git日志日期格式
- git pull -rebase和git pull -ff-only之间的区别
- GitHub -致命:无法读取用户名https://github.com':没有这样的文件或目录