在实际工作开发中非常实用的几个 git 命令(一)

简介: 在实际工作开发中非常实用的几个 git 命令

image.png

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第1天,点击

前言:git 在实际开发过程中的重要性对在座的各位来说想必不用我过多赘述,但是对于 git 中千千万万复杂的命令来讲,在实际开发过程中只有小部分是最经常使用的,今天国庆节第一天,由于疫情原因没回家。闲着没事就给大家总结一下在实际工作中我个人最最最最经常使用的命令,并且我会结合我日常工作流程来讲解。

tips:就不过多介绍 git add-commit-push 这三个命令了

一. git stash + git apply/或(pop)


背景:我需要拿着我修改的代码去和后端对接

已知:

  1. 我们目前不在同一个分支
  2. 我们都是从同一个 master 切出去的一个分支,然后各自进行后端代码的开发和前端代码的开发。
  3. 此时 leader 过来找我,说:“小韩啊,你现在需要去测试xxx的接口看看数据返回有没有问题。”
  4. 假如我现在的代码还未提交过一次(也就是从来没有执行 commit -m 这条命令)

这种情况非常好处理,假如后端的分支名称是 “feat/test-git” 并且已经推上去远程仓库了

  1. 这是你修改的文件(实际情况很可能是修改了了多个文件,我这里举例子只修改了一个) ,

image.png

执行 git stash -m "备注信息" 命令,将这些修改的文件保存到贮藏区。这个命令会把你修改的代码放到一个独立区域。通过 git stash list 命令可以查看你已保存的个数。

image.jpeg

紧接着要想办法去后端的那个分支上了,(这里他必须把他的那个分支推送到远程仓库才可以进行后面的操作)执行 git fetch +[分支名],拉取远程分支到本地。

image.png

然后执行 git checkout +[分支名] 切换到后端的分支

image.png

下一步执行 git stash apply或者git stash pop命令。(该命令的大致功能就是可以把你在贮藏区的代码给应用到当前分支)两者的主要区别在于是否会删除掉贮藏区的这份修改。apply 是不会删除,还会保留贮藏区的记录,而stash pop 是会删除掉贮藏区的这个记录。 我个人推荐apply,因为给了你反悔的机会。并且假如你想测试的分支不是这个后端的,而是另外一个人的分支,那么你同样可以携带着你这份代码过去,然后 apply

  1. 此时后端的代码就和你的代码合并到一起了,就可以放心的测试啦~

二. git reset


紧接着的这个命令是我开发中用到次数非常的多的,并且是关键时候可以救命滴~

背景: 假设我现在完成了自己分支的开发,现在有一个 commit 已经提交到了远程仓库(也就是执行过 push 命令了)

image.png

看一眼远程仓库,嗯,这个 commit 已经被推过去了。

image.png

but,此时你突然发现了这个 commit 的其中某个文件有一个巨大的错误,需要撤销掉这个 commit 重新提交一个 pr

这时候你可能就需要用到 git reset 命令。其实从名字就可以看出来这个命令是要干什么的。

image.png

这时候我们执行 git reset --soft HEAD~1

image.png

执行完以后,你会发现暂存区突然出现了刚刚我们提交的那个 commit 的修改文件。

image.png

这里有个 git 基础知识的关键点需要去理解清楚。我们首先会发现在 Vscode 里会出现一个细小的变化。

image.png

是提醒我们落后了远程仓库一个修改。

我们再去看一下 gitHub仓库 ,好奇怪,为什么这个 commit 还在呢?

image.png

再执行一下 git log 看看,发现 gitlog 的内容,刚刚我们提交的那个 commit 确实已经消失了,HEAD 指向的 commit 也是上一条。

image.png

这里我们需要特别明白,基本上除了 git pull 这个命令,我们操作的都是本地仓库,你是无法直接影响到远程仓库的。你现在只是本地仓库撤销了这个 commit,但是远程仓库还没有更新。所以你接下来需要执行 git push -f 这个命令,推送这次撤销的动作,来更新远程仓库。告诉远程仓库你刚刚的那个  commit 我不要了。(慎用push -f,使用的前提是你很清楚这个命令会造成什么后果)

image.png

这时候我们再去 gitHub 看一下,就会发现。10月2号提交的那个 commit 没有了,最新提交记录的也是昨天的。最重要的是我们的代码也都回来了。

image.png

  1. 接下来你就继续修改你的代码,然后重新提交 pr 即可。

三. git commit --amend


背景:提交的 commit 备注信息有错别字这么办? 别急,git commit --amend 就是解决这个问题滴~

image.png

写错字,并且还推上去了。

image.png

image.png

执行 git commit --amend会默认修改第一个 commit 记录。

image.png

执行完后会跳转到这个页面,这个页面主要是 vim编辑器 打开的样子,不了解 vim 的同学需要自行查阅相关操作。在这里我简单介绍一下在当前页面我们需要用到的命令。

image.png

其实你会发现我们的 commit 消息就是第一行文字

image.png

这时候按下 i,没错,就是这个键盘上普普通通的 i 键位。(单词意思:insert:插入 的缩写)然后输入你修改的内容即可

image.png

image.png



相关文章
|
29天前
|
开发工具 git
git 常用命令
这些只是 Git 命令的一部分,Git 还有许多其他命令和选项,可根据具体需求进行深入学习和使用。熟练掌握这些命令能够帮助你更高效地管理代码版本和协作开发。
|
21天前
|
机器学习/深度学习 Shell 网络安全
【Git】Git 命令参考手册
Git 命令参考手册的扩展部分,包含了从基础操作到高级功能的全面讲解。
29 3
|
1月前
|
缓存 Java Shell
[Git]入门及其常用命令
本文介绍了 Git 的基本概念和常用命令,包括配置、分支管理、日志查看、版本回退等。特别讲解了如何部分拉取代码、暂存代码、删除日志等特殊需求的操作。通过实例和图解,帮助读者更好地理解和使用 Git。文章强调了 Git 的细节和注意事项,适合初学者和有一定基础的开发者参考。
53 1
[Git]入门及其常用命令
|
2月前
|
开发工具 git
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
这篇文章是关于Git常用命令的总结,包括初始化配置、基本提交、分支操作、合并、压缩历史、推送和拉取远程仓库等操作的详细说明。
143 1
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
|
1月前
|
开发工具 git 开发者
|
1月前
|
开发工具 git 开发者
提升Git效率:掌握这5个高级命令
【10月更文挑战第17天】
65 0
|
2月前
|
开发工具 git
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
42 1
|
2月前
|
编译器 开发工具 数据安全/隐私保护
Git——多人协作/版本控制,在一个gitee仓库下开发(Gitee版教程)手把手教学,包好用的!
本文提供了一个关于如何在Gitee上进行多人协作和版本控制的详细教程,包括新建和初始化仓库、克隆仓库、邀请好友共同管理仓库以及注意事项,旨在帮助用户顺利进行代码协作开发。
390 0
Git——多人协作/版本控制,在一个gitee仓库下开发(Gitee版教程)手把手教学,包好用的!
|
3月前
|
存储 Linux 开发工具
掌握 Git 命令:每个开发者的必备技能
无论团队项目还是个人开发,掌握 Git 命令都是必备技能。本文介绍 Git 的基本概念与命令,如初始化仓库 (`git init`)、添加文件 (`git add`)、提交更改 (`git commit`)、检出分支 (`git checkout`)、合并分支 (`git merge`) 等,还分享了高级技巧如查看差异 (`git diff`)、撤销提交 (`git revert`)、修复合并冲突 (`git mergetool`) 和使用别名简化命令 (`git config --global alias.ci commit`)。
|
3月前
|
机器学习/深度学习 Shell 开发工具
Python使用管道执行git命令报错|4-7
Python使用管道执行git命令报错|4-7