Git使用的常用场景
场景一
小张作为一个开发人员,刚进团队,发现团队是使用git进行代码管理的,现在需要去初始化团队的代码仓库以及新增提交自己修改的一部分代码
1.克隆远程仓库 git clone <ssh>
git clone git@github.com:walt-liuzw/gitdemo.git
2.修改代码,比如新增一个readme.txt说明文件
3.多此一举的操作,查看变动的文件
git status
4.提交代码三板斧
git add .
git commit -m "docs: 增加说明文档"
git push

场景二
小张正在dev分支上开发代码,突然有人告诉他,现在master分支上有个紧急的bug需要他去处理,此时有分三种情况
第一种情况:现在在dev分支上修改的文件,可以丢弃掉,然后切换成master分支去修复紧急问题
1.先用git status 查看dev分支有哪些更改的文件

2.使用git checkout . 命令丢弃该分支下的所有变更

第二种情况:小张在dev分支上的变更有很多,而且并没有开发完善,不能提交到远程分支上,而且这些变更不想丢弃,此时可以将代码保存到暂缓区。
使用git stash,将代码存到本地的缓冲区内

将dev分支的变更暂存到暂缓区后,你用干净的分支修改bug或者切换到master分支上去修改bug都行,修改完成后,小张接着之前的开发步骤进行,需要将暂缓区的代码pop出来

然后跟之前的提交代码做合并,继续往下开发。
第三种情况:小张在开发过程中的代码可以随时提交到远程分支(远程分支没有集成ci/cd),这样当遇到切换分支的情况,先把本分支的内容提交到远程分支上。
参考场景一
场景三
小张在修改完一个bug后,去提交代码,此时他发现他刚才修改的bug并不彻底,还漏了几个文件,此时小张可以再提交一个commit,但是这样
两个甚至多个commit都是解决一个问题,在提交记录上并不好看
1.遇到频繁提交,解决一个问题,使用一个commit使用命令
git commit --amend
git push

场景四
小张把两次提交合成一个fix,已经推送到远程分支上了,此时他发现自己脑残了,这两个修改根本不是解决bug的原因,bug是其他问题造成的,此时小张打算将提交回滚到“第一次修改”这个commit上
目标要是实现如下图

1.使用git log看到具体提交的commit id,采用git reset <commit-id>

2.注意一个问题,在下面图中小张使用了git reset方法

使用reset后,又用了git checkout . 才使代码恢复的,这是因为只用reset只会将commit回滚到目标的id,但是之后的代码作为修改状态存在,可以通过git status看到。
场景五
小张现在在dev分支上,dev上的文件是空白的,而master上已经有很多修改了,如果现在打算将master分支的东西合并到dev分支上
1.使用git merge <source-branch>命令

2.当然,如果是简单的合并,可以通过pull的方式实现,在dev上直接pull master分支
Git使用的常用场景的更多相关文章
- 【Git】git使用 - 各种常用场景命令解决
(多看git中的各种帮助-h/--help,可能有你想要的命令) 1.分支的创建和切换 创建 >>>> git branch branchName 切换分支 >>& ...
- Git——常用场景解析
总结:本篇文章从初识GitHub.Git,实践GitHub的五种常用场景,分别是:git for windows安装,git配置,克隆远程代码到本地,上传本地代码到远程以及Git的常用指令.相信Jam ...
- git常用命令常用场景
在使用git之前,一直用的是svn版本管理:与svn最大不同的是,git有两个仓库,一个是本地仓库,一个是服务器上共享的仓库:本地仓库是每个开发者自己独有的,即使commit提交也只是提交到本地仓库: ...
- git 安装与使用场景
1. 安装 yum install git #自动安装依赖 centos sudo apt-get install git #ubutu http://msysgit.github.io/ #wind ...
- Git 基础 —— 常见使用场景
Git 基础学习系列 Git 基础 -- 安装 配置 别名 对象 Git 基础 -- 常用命令 Git 基础 -- 常见使用场景 Git基础 -- Github 的使用 突然插入 Bugifx 工作, ...
- [Git] 1、常用Git命令行总结(一)
一.GIT CLONE最常用的有如下几个 1.最简单直接的命令:git clone xxx.git 2.如果想clone到指定目录:git clone xxx.git “指定目录” 3.clone时创 ...
- git 团队开发常用操作流程(适用于 gogs、gitlab、github)
git 团队开发常用操作流程(适用于 gogs.gitlab.github) NO1 项目构建者 (1)在远程仓库创建仓库 (2)将伙伴添加到仓库合作者中(无先后要求) (2)cd 到项目将要存放项目 ...
- Git安装以及常用命令(图文详解)
**Git安装以及常用命令** 1.下载安装Git,傻瓜式安装相信大家都会. 官网下载地址:[https://git-scm.com/downloads] 2.Git基本操作 (1)git --ver ...
- Git的一些常用命令
一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 简单的说就是托管代码的便于多人开发的管理系统. 二.Git的一些命令,我详细的说一下 我是基于github给大家说一下git的一些常 ...
随机推荐
- BZOJ2882 工艺【SAM】 最小循环串
BZOJ2882 工艺 给出一个串,要求其循环同构串中字典序最小的那个 串翻倍建\(SAM\)然后从起点开始贪心的跑\(n\)次即可 当然也能用最小表示法来做 #include<bits/std ...
- R - 0 or 1(最短路)
Given a n*n matrix C ij (1<=i,j<=n),We want to find a n*n matrix X ij (1<=i,j<=n),which ...
- hdu5233 Gunner II
Problem Description Long long ago, there was a gunner whose name is Jack. He likes to go hunting ver ...
- PowerShell随笔2---初始命令
PowerShell便捷之处 PowerShell中兼容运行cmd的命令,比如 ipconfig.ping命令等 PowerShell的命令更友好,可读性更强.比如停止一个服务 CMD命令:sc st ...
- MySQL数据库系列(三)- MySQL常用引擎MyISAM和InnoDB区别详解
概述 InnoDB:在MySQL 5.5及之后的版本,InnoDB是MySQL默认的事务型引擎,也是最重要和使用最广泛的存储引擎.它被设计成为大量的短期事务,短期事务大部分情况下是正常提交的,很少被回 ...
- 【非原创】ZOJ - 4062 Plants vs. Zombies【二分】
题目:戳这里 题意:机器人走过一个花,可以给那个花浇水,给定步数下,问花的最小的最大能量值. 学习博客:戳这里 本人代码: 1 #include <bits/stdc++.h> 2 typ ...
- kmp--考研写法
首先是模式串匹配: #include<iostream> #include<stdlib.h> using namespace std; #define maxn 100000 ...
- vuepress config favicon
vuepress config favicon .vuepress/public favicons https://vuepress.vuejs.org/guide/assets.html#publi ...
- pure CSS waterfall layout
pure CSS waterfall layout 纯 CSS 瀑布流布局 flex layout .container{} .item{} https://caniuse.com/?search=c ...
- vue render html string
vue render html string shit element ui render string array relativeShowConvert(data) { // log(`data` ...