如何获知Git仓库新分支及远程变更且不影响本地分支?
解决方案:用Git Fetch查看远程变更且不影响本地分支
嘿,刚好有个完美的命令能满足你的需求——git fetch!它就是专门用来获取远程仓库的所有更新,但完全不触动你本地任何分支的工具,正好匹配你想保持本地master为空,同时知晓远程变化的场景。
具体操作步骤:
拉取所有远程更新
执行这条核心命令:git fetch origin它会把远程仓库
origin里的所有分支(包括Alice更新的origin/master、Mario新增的origin/mario)的最新状态同步到本地的远程跟踪分支,但绝对不会修改你本地的master分支,你的本地分支会一直保持原来的空状态。查看新增的远程分支
想看远程现在有哪些分支,用:git branch -r这时候你就能清晰看到
origin/master和新增的origin/mario分支了。查看远程分支的变更细节
- 如果你想对比本地空
master和远程origin/master的差异,用:
这样就能直观看到Alice推送到远程的所有代码变更内容。git diff master origin/master - 如果你想看看Mario的
origin/mario分支里的内容,可以用:
查看该分支的提交记录;或者临时切换过去查看代码:git log origin/mario
(注:这会进入分离HEAD状态,只是临时查看,不会创建本地分支,看完后执行git checkout origin/mariogit checkout master就能切回原来的本地分支)
- 如果你想对比本地空
额外提醒:别用git pull
千万别用git pull,它会自动把远程分支的变更合并到你的本地当前分支,这样你的本地master就会被修改,完全不符合你想保持本地分支不变的需求。
内容的提问来源于stack exchange,提问作者Gulzar




