git复习

本文介绍了Git的一些基本操作,包括gitfetch和gitmerge用于更新和合并远程分支,gitrebase用于线性化提交历史,gitpull作为fetch和merge的组合,以及gitpush将本地更改推送到远程仓库。还提到了解决push失败的方法,即先fetch或pull,再rebase和push。此外,强调了在main分支以外的分支进行开发的重要性。
摘要由CSDN通过智能技术生成
git pull = git Fetch + merge

git pull --rebase = git Fetch + rebase

远程追踪

你可以让任意分支跟踪 o/main, 然后该分支会像 main 分支一样得到隐含的 push 目的地以及 merge 的目标。 这意味着你可以在分支 totallyNotMain 上执行 git push,将工作推送到远程仓库的 main 分支上

git checkout -b totallyNotMain o/main

就可以创建一个名为 totallyNotMain 的分支,它跟踪远程分支 o/main

 

 

git clone

克隆一个远程仓库到本地仓库之后,本地会有一个origin/main分支(代表这是你从远程仓库拉取的最后Head记录分支)和main分支(本地用的)

main分支是给你在自己本地仓库用的

git rebase X(插入X后面)与git merge X(把X吞并掉),区别还是大的!

第二种合并分支的方法是 git rebase

git rebase branchB

git rebase branchA branchB

rebase branchB 就是把当前的一条线上的分支(提交记录)都给插到branch B的屁股后面

Rebase 实际上就是取出一系列的提交记录,“复制”它们,然后在另外一个地方逐个的放下去。

Rebase 的优势就是可以创造更线性的提交历史

执行git

执行git merge test

 或者

执行 git rebase test


 

可视化链接

gitfetch

获取远程仓库最新数据比如orgin/main,但是不会改变本地磁盘内容/main

git fetch 获取远程的数据, 现在我们学习如何将这些变化更新到我们的工作当中

执行git fetch

git pull

就是获取后再合并·本地的

由于先抓取更新再合并到本地分支这个流程很常用,因此 Git 提供了一个专门的命令来完成这两个操作。它就是我们要讲的 git pull

同样的结果!这清楚地说明了 git pull 就是 git fetch 和 git merge 的缩写!

git push

git push会把当前本地仓库的main那条分支-同步到远程的main

然后本地的o/main会自动同步

 

 git push origin XXX_local:XXX_remote

 

你的本地仓库origin/main和远程仓库的main,对不上,你的origin/main太老了

,git push也会失败 ,则git push要求你得先试着合并

git push失败解决方法:

在push之前必须同步远程仓库

执行fetch  Or  pull

选择fetch之后

git rebase o/main
git push

Pull Request

远程服务器拒绝!(Remote Rejected)

一般需要在远程克隆到本地的main以外的进行开发 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fars

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值