02.Git常用基本操作

一、基本配置

(1)打开Git Bash

(2)配置姓名和邮箱

git config --global user.name "Your Name"
git config --global user.email "Your email"

因为Git是分布式版本控制工具,所以每个用户都需要有自己的名字和邮箱。

--global参数,表示该分支上的所有Git仓库都使用这个配置。

(3)查看配置信息

# 查看已有配置信息
git config --list
# 单独查看某项配置信息
git config user.name
......

二、基础操作指令

0.工作流程&状态变化图

(1)clone(克隆):从远程仓库中克隆代码到本地仓库;

(2)checkout(检出):从本地仓库中检出一个仓库分支,然后进行修订;

(3)add(添加):将代码从工作区添加到暂存区;

(4)commit(提交):将代码提交到本地仓库;本地仓库保存修改的各个历史版本;

(5)fetch(抓取):从远程仓库抓取到本地仓库,不进行任何的合并操作;

(6)pull(拉取):从远程仓库拉到本地仓库,自动进行合并(merge),然后放到工作区,相当于fetch+merge;

(7)push(推送):修改完成后,需要与团队成员共享代码时,将代码推送到远程仓库。

1.查看修改状态(status)

**(1)作用:**查看文件修改状态

**(2)命令形式:**git status

2.添加工作区到暂存区(add)

**(1)作用:**添加工作区中一个或多个文件的修改到到暂存区

**(2)命令形式:**git add 单个文件名或通配符

3.提交暂存区到本地仓库(commit)

**(1)作用:**将暂存区内容提交到本地仓库的当前分支

**(2)命令形式:**git commit -m "备注信息"

4.查看提交日志(log)

**(1)作用:**查看提交记录

**(2)命令形式:**git log [option]

--all:显示所有分支

--pretty=online:将提交信息显示为一行

--abbrev-commit:使输出记录更加简短

--graph:以图的形式显示

5.版本回退

**(1)作用:**版本切换

**(2)命令形式:**git reset --hard commit_Id

**注:**commit_Id可以使用git-log或git log指令查看

(3)如何查看已删除的记录?

**git reflog:**可以看到已经删除的提交记录

6. 添加文件至忽略列表

(1)作用:将不需要被git管理的文件自动忽略

(2)方法:创建.gitignore文件,在文件中写入需要被忽略的文件

7.自定义命令别名

(1)在电脑用户目录下创建".bashrc"文件

(2)在文件中自定义别名,格式如下:

alias 自定义命令名='原始命令'

三、分支常用指令

1. 查看分支

**命令:**git branch

2.创建本地分支

**命令:**git branch 分支名

3.切换分支

**命令:**git checkout 分支名

**创建并切换:**git checkout -b 分支名

4.合并分支

**命令:**git merge 分支名

**作用:**将其他分支上的提交,合并到当前分支上

5.删除分支

**命令:**git branch -d/D 分支名

-d:删除分支时,需要做各种检查

-D:不做任何检查,强制删除

**注意:**不能删除当前分支,只能删除其他分支。

6.分支合并冲突解决

两个分支上对同一个文件的修改可能存在冲突,比如他们同时修改了同一行,这时在合并时就会导致冲突发生,需要手动解决:

(1)找到文件中冲突的位置;

(2)将冲突内容修改为我们希望合并后的样子;

修改为我们希望合并后的样子:

(3)将解决完冲突后的文件加入暂存区;

(4)提交文件到仓库;

四、分支使用原则与流程

几乎所有的版本控制系统都以某种形式支持分支,使用分支可以让我们把自己的工作从开发主线上分离开来,进行bug修复、新功能开发等,避免影响开发主线。

在开发中,一般有如下分支使用原则和流程:

(1)master(生产)分支:线上分支、主分支,中小规模项目作为线上运行的应用对应的分支。

(2)develop(开发)分支:从master创建的分支,一般作为开发部门的主要开发分支,如果没有其他并行开发不同期上线要求,都可以在此版本中进行开发,阶段开发完毕后,需要合并到master分支中准备上线。

(3)feature/xxxx分支:从develop创建的分支,一般用于同期并行开发,但不同期上线时创建的分支,该分支上的研发任务完成后合并到develop分支。

(4)hotfix/xxxx分支:从master上派生的分支,一般用于线上bug修复,修复完成后合并到master、test、develop分支。

(5)test分支:用于代码测试......

(6)pre分支:预上线分支......

......

相关推荐
Smile丶凉轩7 小时前
微服务即时通讯系统的实现(服务端)----(1)
c++·git·微服务·github
和你一起去月球17 小时前
TypeScript - 函数(下)
javascript·git·typescript
我不是程序猿儿17 小时前
【GIT】TortoiseGit的变基(Rebase)操作
git
yyycqupt1 天前
git使用(一)
git
Kkooe1 天前
GitLab|数据迁移
运维·服务器·git
Beekeeper&&P...1 天前
git bash是什么,git是什么,git中的暂存区是什么,git中的本地仓库是什么,git中工作目录指的是什么
开发语言·git·bash
Stara05111 天前
Git推送+拉去+uwsgi+Nginx服务器部署项目
git·python·mysql·nginx·gitee·github·uwsgi
lsswear1 天前
GIT 操作
git