git 使用

如果有问题请各位大佬指出,毕竟代码版本很重要!别误人子弟😊

在使用git开发的时候,经常会需要切换原来的版本。

1.git checkout commitID可以切换到commit参数指定的版本,但是需要注意的是,这个是脱离了原来的分支,修改本地文件以及git commit提交操作都不会影响之前的分支。可以使用git switch - 切换回原来的分支

2.如果想将远程分支和本地分支都切换为原来的某个版本

**git reset --hard <commit>**将git的HEAD指针指向到commit对应的版本,本地文件内容也会回退,不需要再执行git checkout命令来回退本地文件内容(我感觉是git reset <commit> + git checkout [--] <filepath>的结合)

  • 这个命令会回退git log的信息,但是可以使用git log -g看到所有操作过程的commit信息
  • 这个操作会导致本地分支落后远程仓库1个提交,可以使用快进(fast-forward)将本地分支更新到远程分支的最新状态 "Your branch is behind 'origin/xxx' by 1 commit, and can be fast-forwarded. (use "git pull" to update your local branch)"
bash 复制代码
1.git fetch 获取远程分支的最新更新,但是不会自动合并到当前分支
2.git diff origin/xxx 查看本地分支和远程分支之间的差异
3.git merge origin/xxx 手动合并远程分支的更改到本地分支

这种操作适用于查看当前修改和之前某次提交修改的差别

  • 如果想要在之前的分支上继续开发呢?

    bash 复制代码
    1.git stash 将当前的更改暂存起来,方便后续恢复使用(我认为这就是栈的操作),
    如果已经push过远程,我认为可以不用,后续直接根据 commitID获取就可以了
    2.git push --force origin xxx 将本地分支的更改强制推送到远程分支上

    参考: https://segmentfault.com/a/1190000020863861

相关推荐
先跑起来再说2 小时前
Git 入门到实战:一篇搞懂安装、命令、远程仓库与 IDEA 集成
ide·git·后端·elasticsearch·golang·intellij-idea
承渊政道5 小时前
Linux系统学习【Linux系统的进度条实现、版本控制器git和调试器gdb介绍】
linux·开发语言·笔记·git·学习·gitee
Doro再努力5 小时前
【Linux操作系统12】Git版本控制与GDB调试:从入门到实践
linux·运维·服务器·git·vim
摇滚侠8 小时前
MAC IDEA GIT 提交区显示了几个不存在的目录
git·idea
城东8 小时前
Git使用[远程仓库远端的head比本地和提交的head旧,其他人拉不到最新代码]
git·head·远程仓库远端·比本地和提交的head旧·其他人拉不到最新代码
何中应17 小时前
使用SSH地址拉取远程仓库代码报下面的错误
git
何中应17 小时前
Git本地仓库命令补充
git
sun00770019 小时前
执行repo sync -c -d -j4以后,提交未git push的代码看不到了。要怎么恢复?
git
胖虎121 小时前
Git 一个本地仓库同时推送到两个远程仓库(详细教程)
git·多远程仓库·双远程仓库·git双远程·git备份
春日见1 天前
如何创建一个PR
运维·开发语言·windows·git·docker·容器