git fetch 和 git pull区别

git branch //查看本地所有分支

git branch -r //查看远程所有分支

git branch -a //查看本地和远程的所有分支

git branch <branchname> //新建分支

git branch -d <branchname> //删除本地分支

git branch -d -r <branchname> //删除远程分支,删除后还需推送到服务器

git push origin:<branchname> //删除后推送至服务器

git branch -m <oldbranch> <newbranch> //重命名本地分支

/**

*重命名远程分支:

*1、删除远程待修改分支

*2、push本地新分支到远程服务器

*/

//git中一些选项解释:

-d

--delete:删除

-D

--delete --force的快捷键

-f

--force:强制

-m

--move:移动或重命名

-M

--move --force的快捷键

-r

--remote:远程

-a

--all:所有

git fetch 命令:

$ git fetch <远程主机名> //这个命令将某个远程主机的更新全部取回本地

如果只想取回特定分支的更新,可以指定分支名:

$ git fetch <远程主机名> <分支名> //注意之间有空格

最常见的命令如取回origin 主机的master 分支:

$ git fetch origin master

取回更新后,会返回一个FETCH_HEAD ,指的是某个branch在服务器上的最新状态,我们可以在本地通过它查看刚取回的更新信息:

$ git log -p FETCH_HEAD

前面提到,git pull 的过程可以理解为

git fetch origin master //从远程主机的master分支拉取最新内容

git merge FETCH_HEAD //将拉取下来的最新内容合并到当前所在的分支中

即将远程主机的某个分支的更新取回,并与本地指定的分支合并,完整格式可表示为:

$ git pull <远程主机名> <远程分支名>:<本地分支名>

如果远程分支是与当前分支合并,则冒号后面的部分可以省略:

$ git pull origin next

相关推荐
vibecoding日记3 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
程序员小崔日记3 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger4 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
DianSan_ERP5 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
红豆子不相思5 天前
Tomcat 环境搭建与集群实战
服务器·git·tomcat
杰哥技术分享5 天前
Git 仓库迁移技术文档:从 CODING.net 迁移至腾讯云 CNB
git
梅孔立5 天前
Ansible 100 台服务器一键管控实战 进阶版
服务器·git·ansible
qq_426003966 天前
git切换当前分支到远程分支
git
ON10N6 天前
100% 纯 Vibe Coding,我是怎么用 AI 撸出一个 VS Code 插件的
git·ai编程·visual studio code