git的几种实用操作(合并代码与暂存复原代码)
总述
git工具也用了很久,自己也写了几篇使用教程,今天继续给大家分享一些我工作中使用过的git操作。
1.git合并远程仓库的代码
2.git stash保存当前的修改
这两种情况大家应该都使用比较多,现在大家使用git进行团队开发代码的情况比较普遍,所以我们经常需要进行合并代码;此外,当我们在开发过程中,突然遇到紧急任务插入,我们需要再其他分支进行工作,但是当前分支我们还会再返回继续修改,这个时候代码还有bug,不能直接推到服务器,这个时候就需要我们进行保存当前的状态,等待我们返回继续修改。
作者:良知犹存
转载授权以及围观:欢迎添加微信公众号:Conscience_Remains
1
git合并远程仓库的代码
这是我们开发代码最常用的的流程,但是程序开发是一个团队的事情,我们时常需要进行合并同事工作完成的模块。工作如下所示:
我介绍一下我比较多使用一种方法git fetch + merge: 获取最新代码到本地进行合并。
git fetch命令用于从另一个存储库下载对象和引用,git merge用来进行代码的合并。
首先我们先查看一下我们需要合并的分支
git branch -a 查看全部分支
当前我的分支为lyn
接下来进行需要合并分支的代码获取,我准备获取lyp分支
git fetch origin lyp_001
查看两者代码的差异
git log -p lyn lyp_001
合并远端的lyp_001代码到当前分支
git merge origin/lyp_001
这个时候就合并完成了代码,然后我们就可以进行合并后的冲突代码修改,然后进行git push了。
2
git stash暂存以及复原当前工作环境
我们经常遇到紧急的任务,这个时候你必须得放弃现在正在修改的代码,转而切换到其他分支进行工作,但是当前的代码还没有调试成功,无法进行git push所以这个时候我们需要进行本地的暂存,当我们紧急任务完成之后,在还原当前的工作环境。
首先直接使用git stash命令进行保存环境
git stash
或者
git stash save “修改的信息"
其次我们会进行git checkout 或者 git switch 切换到其他分支工作,
使用完成之后我们进行查看我们的暂存区列表。
gitstash list
然后你可以选择一个你需要的版本进行复原,其中{0}为暂存列表的编号选择
git stash apply stash@{0}
此外我们还可以删除一些旧的缓存记录
git stash dropstash@{0} 这是删除第一条
使用git list就可以查看到删除后的缓存列表
git stash clear :注意这是清空你所有的内容
这就是我分享的一些git使用频次比较多的操作,如果大家有什么更好的思路,欢迎分享交流哈。
更多分享,扫码关注我
git的几种实用操作(合并代码与暂存复原代码)的更多相关文章
- git命令之git stash 暂存临时代码
git stash — 暂存临时代码 stash命令可以很好的解决这样的问题.当你不想提交当前完成了一半的代码,但是却不得不修改一个紧急Bug,那么使用’Git stash’就可以将你当前未提交到 ...
- 45个 GIT 经典操作场景,专治不会合代码
大家好,我是小富~ 技术交流关注公众号:程序员内点事 传送门:原文地址 git对于大家应该都不太陌生,熟练使用git已经成为程序员的一项基本技能,尽管在工作中有诸如 Sourcetree这样牛X的客户 ...
- git实用操作21条
1.建空目录 mkdir e:\gg 2.把该目录变成仓库 git init //发现当前目录下多了一个.git 3.新建文件readme.txt 4.添加文件到仓库 git add readm ...
- 【软件构造】(转)Git详解、常用操作与版本图
版本控制与Git 转自:http://www.cnblogs.com/angeldevil/p/3238470.html 版本控制 版本控制是什么已不用在说了,就是记录我们对文件.目录或工程等的修改历 ...
- git工作中的常用操作
上班开始,打开电脑,git pull:拉取git上最新的代码: 编辑代码,准备提交时,git stash:将自己编辑的代码暂存起来,防止git pull时与库中的代码起冲突,否则自己的代码就白敲了: ...
- git reset三种模式
reset三种模式区别和使用场景 区别: --hard:重置位置的同时,直接将 working Tree工作目录. index 暂存区及 repository 都重置成目标Reset节点的內容,所以效 ...
- Git撤销、回滚操作
git的工作流 工作区:即自己当前分支所修改的代码,git add xx 之前的!不包括 git add xx 和 git commit xxx 之后的. 暂存区:已经 git add xxx 进去, ...
- git的使用,eclipse操作(待更新)
使用eclipse将项目上传到git私有服务器或github服务器: 1.配置个人信息: 2.配置eclipse私钥公钥: 上传公钥到仓库: 修改仓库中的公钥名称: 3.提交代码 一个仓库只能上传一个 ...
- Git入门——本地版本库操作
作为一个一直用SVN的家伙,深深地感到了自己在版本控制工具上的落伍.... 首先必须强调的是: Git与Github不是一回事. Git是目前世界上最先进的分布式版本控制系统,于2005年被linux ...
随机推荐
- 最实用的visual studio插件,值得收藏!
1.ReSharper(VS必装,代码重构.代码修正功能) ReSharper 是一个JetBrains公司出品的著名的代码生成工具.其能帮助Microsoft Visual Studio成为一个更佳 ...
- 「珍贵历史资料鉴赏」CF786B 题解
写在前面 偶然翻到一篇 2019-08-07 18:58 写的未发布的题解. 给大家找点乐子玩. 正文 知识点:线段树优化建图 线段树优化建图 用于解决 类似 从 x 向区间[L,R]的 区间连边问题 ...
- 如何优雅地开发HarmonyOS APP应用
目录: 一.挖掘项目需求或者做项目移植 二.创建项目工程 三.功能模块实现的流程思路 四.养成良好的编程规范习惯以及运用设计模式 研究HarmonyOS有一段时间了,今天主要结合自己多年的项目开发经验 ...
- python中环境变量的使用
前言 之前就经常用,今天来凑个篇数. 在开发的过程中,我们经常会将代码中某些可能更改的,比如redis地址,数据库地址,限流阈值等参数写活来提高灵活性, 传统的方式可能是写在配置文件中,比如 xml ...
- MBAir下安装httprunner2.5.7 har2case 出现zsh: command not found解决方案
MBAir下python3.8安装httprunner2.5.7 出现zsh: command not found find / -name hrun查找到路径为: /Users/w550856/Li ...
- grep和egrep
grep nobody /etc/passwd 显示/etc/passwd中带有nobody字样的行,区分大小写 grep -i nobody /etc/passwd 现实/etc/passwd中 ...
- 【Linux】centos 7中,开机不执行rc.lcoal中的命令
最近将一些需要开机启动的命令添加到了rc.local中 本想着开机就启动了,很省事 但是一次意外的重启,发现rc.local中的全部命令都没有执行 发现问题后,及时查找 参考:https://blog ...
- mysql—if函数
在mysql中if()函数的具体语法如下:IF(expr1,expr2,expr3),如果expr1的值为true,则返回expr2的值,如果expr1的值为false,则返回expr3的值. 开始实 ...
- 单线程的as-if-serial语义
单线程的as-if-serial语义 关于指令重排序有个问题不明白的一个问题 int a = 2; int c = 1 + a; float b = 3f / 2f; 举个栗子,从CPU的设计者以及编 ...
- JMM在X86下的原理与实现
JMM在X86下的原理与实现 Java的happen-before模型 众所周知 Java有一个happen-before模型,可以帮助程序员隔离各个平台多线程并发的复杂性,只要Java程序员遵守ha ...