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 ...
随机推荐
- Docker环境下升级PostgreSQL
查阅PostgreSQL官方文档可以得知,官方提供了两种方式对数据库进行升级--pg_dumpall与pg_upgrade. pg_dumpall是将数据库转储成一个脚本文件,然后在新版数据库中可以直 ...
- 首秀:Markdown学习笔记
# Markdown学习 ## 标题 ### 三级标题 #### 四级标题 ## 字体 **Hello,World!** *Hello,World!* ***Hello,World!*** ~~Hel ...
- Dockerfile文件说明
文件说明 此文件用于docker镜像文件的制作 基本结构 Dockerfile文件由行命令组成,以#开头注释行 一般分为四部分,基础镜像信息.维护者信息.镜像操作指令和容器启动执行指令. 例如 #De ...
- 关于.NET中的控制反转(一)- 概念与定义
一.控制反转 1:类与类的依赖 依赖是面向对象中用来描述类与类之间一种关系的概念.两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务,这样的两个对象之间主要体现为依赖关系 ...
- 【Flutter】可滚动组件之ListView
前言 它可以沿一个方向线性排布所有子组件,并且它也可以支持基于Sliver的延迟构建模型. 接口描述 ListView({ Key key, // 可滚动widget公共参数 Axis scrollD ...
- LeetCode704 二分查找
给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1. 示例 1: 输入: num ...
- LeetCode662 二叉树最大宽度
给定一个二叉树,编写一个函数来获取这个树的最大宽度.树的宽度是所有层中的最大宽度.这个二叉树与满二叉树(full binary tree)结构相同,但一些节点为空. 每一层的宽度被定义为两个端点(该层 ...
- python_字典(dict)
dict 一.结构: info = { "key":"value", "key":"value" } print(inf ...
- Vim 自动添加脚本头部信息
每次写脚本还在为忘记添加头部信息啥的烦恼? 按照下面这么做,帮你减轻点烦恼. # 打开配置文件: vim /root/.vimrc # 添加如下信息: autocmd BufNewFile *.sh ...
- 转载 - Ubuntu源改国内源 与 批量更改ubuntu机器apt源
change_apt_source.sh # !/bin/bash # 备份原来的源文件 cp /etc/apt/sources.list /etc/apt/sources.list.bak # 获取 ...