首页 > 其他分享 >git小教室

git小教室

时间:2022-11-04 00:44:36浏览次数:55  
标签:origin git rebase 本地 小教室 fetch 分支

说明

  • "~" 跟 "^" 区别
    • ^ caret ~ tilda
    • git checkout HEAD^^^和git checkout HEAD~3等价,都代表当前版本的前3个版本
    • 区别在于3和~3代表不同概念,3代表回退一个版本,以第三条graph线为准。
    • 操作符 ^ 与 ~ 符一样,后面也可以跟一个数字。但是该操作符后面的数字与 ~ 后面的不同,并不是用来指定向上返回几代,而是指定合并提交记录的某个父提交。
  • 当head没有指到任何本地分支上就会脱离。
  • git bisect start [终点] [起点]
    • 二分法排错,"终点"是最近的提交,"起点"是更久以前的提交。它们之间的这段历史,就是差错的范围。
    • git bisect start HEAD 5d67e3
    • 使用git bisect good 和 git bisect bad来标识,直到找到xxx is the first bad commit
    • git bisect reset # 退出查错,回到最近一次的代码提交,就可以进行改错了

本地操作

git rebase cat # 把目前分支叠在cat分支后面
git rebase cat dog # 把dog分支叠在cat分支后面
git rebase -i 互动式rebase

git checkout -b 分支名 # 切换分支,如果分支不存在则建立
git checkout -b 分支名 commitID # 切换分支,如果分支不存在则以commitID建立
git checkout -b temp origin/master # 如果temp分支不存在,则新建分支temp,并关联到origin/master

git branch 分支名 commitID # 建立分支
git branch -f 分支名 commitID # 对于存在的分支强制还原到某次提交
git branch -u o/main notMain # 关联本地notMain分支到远程分支o/main

git tag tag名 commitID # 打tag
git cherry-pick c1 c2 c3

git merge # 产生一次合并记录
git revert # 产生一次撤销记录

远程仓库操作

git pull 到头来就是 fetch 后跟 merge 的缩写。你可以理解为用同样的参数执行 git fetch,然后再 merge 你所抓取到的提交记录。

git pull origin <place>
git pull origin <source>:<destination> 
git pull = git fetch + git merge
git pull --rebase = git fetch + git rebase

git push origin <place> # 远程分支不存在会自动创建,下同
git push origin <source>:<destination> # 这里的source指的是本地分支,destination是远程分支
git push origin :foo # source留空,代表删除远程仓库分支foo

git fetch # 下载远程仓库文件到本地,更新本地的所有远程分支
git fetch origin <place> # 本地分支不存在会自动创建,下同
git fetch origin <source>:<destination> # 这里的source指的是远程分支,destination是本地分支
git fetch origin :foo # 如果source为空,则在本地以当前HEAD创建一个foo分支

标签:origin,git,rebase,本地,小教室,fetch,分支
From: https://www.cnblogs.com/reamd/p/16856382.html

相关文章

  • git安装
    1、地址https://git-scm.com/downloadshttps://npm.taobao.org/mirrors/git-for-windows/ 2、下载 基础版本和便携版本 3、安装第一种:“仅从GitBash使用G......
  • git分支管理策略_转载
    git������������������_������Git分支管理策略转载来源:Git分支管理策略-阮一峰的网络日志(ruanyifeng.com)如果你严肃对待编程,就必定会使用”版本管理系统“(VersionControlSystem)。眼下......
  • Git实战
    分四步走:1.进入你要管理的文件夹2.初始化3.管理当前文件下的文件4.生成版本信息 gitinit ---初始化  gitstatus ---检测当前文件夹下面文件的状......
  • git commit 规范
    标题行:必填,描述主要修改类型和内容主题内容:描述为什么修改,做了什么样的修改,以及开发的思路等等页脚注释:放BreakingChanges或ClosedIssues在这三部分中,<>......
  • 玩转 Gitea | 在 Linux 上安装预编译的 Gitea 程序,配置 systemd 管理服务
    这是一篇介绍手动安装Gitea服务器的用户指南。与之前的容器安装方式相比,对系统资源的要求更低,因此也可以在低功耗的嵌入式Linux设备上配置安装。您可以使用systemd作......
  • git常用操作 做下笔记 免得日后遗忘
    个人常用操作:gitclonexxx链接gitbranchxxx新分支名gitcheckoutxxx分支名(上述两步可以合成一步:gitcheckout -bxxx分支名)gitbranch-Dxxx分支名gitadd.......
  • git config初始化用户 & 配置ssh公钥、私钥
    一、本地系统初始化用户信息查看本地现有用户信息gitconfig--list如果没有配置,需要初始化一个gitconfig--globaluser.nameliujinyugitconfig--globaluser......
  • Git 存储库安全警告
    问题描述使用VS打开存储库,遇到下面问题:  Git无法正常工作,因为‘’存储库已被检测为可能不安全。如果您信任此存储库,则可以将其标记为安全。  Gitisnotworkin......
  • gitlab正确上传文件方法
    一.用户邮箱绑定打开电脑命令提示符首先要配置好用户名和邮箱查看用户名和邮箱gitconfiguser.namegitconfiguser.email修改用户名和邮箱gitconfig--globaluser.n......
  • git撤销文件的修改
    git撤销某个文件的修改,分为两种情况:在工作区修改,但并未提交到暂存区(即并没有add)。对于单个文件的撤销修改而言,使用下面方法。gitcheckout--文件名若想撤销工作区......