git命令的使用

news/2024/11/26 5:22:29/

1. 查看文件

git cat-file -p

仓库路径下右键 Git Bash Here 打开git命令窗口:

复制某个文件的版本号:

粘贴到git命令窗口,会显示文件的提交信息

查看 tree后面的版本号,则会看到详细提交信息:

查看hello.cpp前面的版本号,则会查看到提交到的详细内容:


2. 常用命令

2.1 仓库操作

2.1.1 仓库初始化 git init

创建local-test-02目录,在该文件夹中右键菜单打开git命令窗口,

输入git init命令初始化仓库,初始化后文件夹下会生成.git目录:

与客户端软件创建仓库不同的是:

客户端软件创建仓库时会默认初始化main分支信息的文件,但git init命令不会。 


2.1.2 仓库克隆 git clone

克隆远程仓库到本地。

复制远程仓库的地址:

git clone命令克隆到本地:

克隆的同时,可将远程仓库在本地重命名:


2.1.3 仓库配置 git config

配置自己的用户名和邮箱,可以知道操作仓库人员的身份标识。

如配置某一个仓库,需要进入到该仓库目录下使用git config进行配置:

 

对所有仓库设置用户名和邮箱:


2.2 文件操作 

首先创建一个新的仓库local-rep-1,并用git init命令初始化。

2.2.1 查看工作区、暂存区状态 git status


2.2.2 添加文件 git add

在local-rep-1中创建文件a.txt,并在其中写入内容;

再次使用git status命令查看:

此时a.txt为“Untracked(未跟踪)”状态,表示git未将该文件管理起来。

使用git add指令将啊a.txt文件添加到暂存区,再使用git status命令查看:

可使用git rm --cached命令将文件从暂存区移除:

补充:也可使用通配符进行批量操作,如将所有的txt文件加入到暂存区:

git add *.txt


2.2.3 将暂存区的文件提交到仓库中 git commit

将a.txt提交到仓库:

-m表示备注提交信息。

再次使用git status查看:

2.2.4 查看历史提交信息 git log

--oneline:简要地显示。


接着上面地commit操作,修改a.txt中的内容后,使用git status查看:

此时仍然需要先add再commit:

删除a.txt后:


2.2.5 文件恢复 git restoregit resetgit revert

新建仓库local-rep-2,并初始化;

创建a.txt,add并commit。

case 1:若删除a.txt,但未commit,若想恢复,则使用git restore命令恢复:

case 2:若删除a.txt,并commit,则git restore无法恢复:

此时需要使用git reset重置到某个版本的提交来恢复a.txt:

但此时如上,删除的提交信息丢失。

case 3:若想恢复删除且提交的文件a.txt,但不想丢失历史提交信息,此时使用git revert指令.

注意:使用git revert恢复到某个版本n时,需要将版本号指定为版本n的下一个提交的版本号。

如下:


2.3 分支操作

新建仓库local-rep-3并初始化。

2.3.1 创建分支 git branch

创建分支user,但出错:

因为命令行初始化仓库时,仓库中无任何提交,也无任何分支,因此无法创建分支。

此时需要创建一个提交或空提交,然后才可以创建分支,如下:

2.3.2 查看当前仓库所有分支 git branch -v

 

2.3.3 切换分支 git checkout

2.3.4 创建并切换分支 git checkout -b

2.3.5 删除分支 git branch -d

注意:不能删除当前所在分支,否则会报错,如下:


2.3.6 分支合并 git merge

注意:将分支A合并到分支B,则必须切换到分支B再进行合并操作。

分支goods中有a.txt文件,分支user中有b.txt文件。

此时需要将user分支合并到goods分支,则先切换到goods分支,再进行合并操作:

合并后,goods分支下有a.txt和b.txt:

2.3.7 分支合并冲突解决

在分支user和goods下都创建c.txt文件,并写入内容后提交,然后将user分支合并到goods分支,会发生冲突:

此时需要打开c.txt文件,手动编辑文件解决冲突:

编辑完成后,提交:


2.3.8 标签 git tag

新建仓库local-rep-4并初始化.

创建a.txt并提交;

再修改a.txt中的内容提交;

创建b.txt并提交;

查看提交情况:

查看某个版本及之前的提交情况:

但是版本号太长,此时可以给版本号起别名:

git tag 标签名 版本号(版本号:git log或git log --online查看的版本号都可)

git tag 查看所有标签

git log [--oneline] 标签 查看某个标签及之前的提交信息

git tag -d 标签名 删除某个标签

2.3.9 使用标签创建分支

分支即引用某个版本号,从该版本号的地方开始其他的新的操作。

添加标签并创建分支:

 


http://www.ppmy.cn/news/193481.html

相关文章

类和对象【4】static成员、const对象、友元

全文目录 引言static成员static成员变量static成员函数 const对象友元友元函数友元类 总结 引言 通过前面的三篇文章,相信大家对类和对象已经有了一个基本的认识。 类和对象1(初识) 类和对象2(默认成员函数) 类和对象…

android q哪些手机型号,花粉看过来!华为公布8款首批适配安卓Q机型

原标题:花粉看过来!华为公布8款首批适配安卓Q机型 昨天,一年一度的谷歌 I/O 2019开发者大会在美国加州正式召开,在大会上谷歌发布了多款重磅新品,其中最引人注意的还是万众期待的Android Q。据谷歌介绍,此次…

微博android升级7.000,华为 Android 7.0 升级计划曝光:G9 青春版 /Nova 也有份

日前,华为已经为 P9 和 Mate 8 开启了基于 Android 7.0 深度定制的 EMUI5 内测,同时荣耀方面也已经面向 V8 和 Mate8 的用户开启内测,相信有不少花粉用户已经体验到了牛轧糖的滋味。 现在,外媒给出了华为 Android 7.0 详细升级计划…

arm mali 天梯图_手机CPU天梯图2017年上半年新版 2017手机cpu性能排行天梯图

下载吧小编带来了手机CPU天梯图2017年上半年新版, 2017手机cpu性能排行天梯图,关注智能手机性能排行、手机CPU对比的朋友快来通过本文简单粗暴的方式,快速了解下吧,喜欢的朋友,记得收藏哦。 手机CPU天梯图2017年4月新版…

火爆海外的使命召唤要出手游啦:使命召唤最全适配机型一览

使命召唤适配哪些手机机型?使命召唤师一款FPS射击游戏,其PC系列版在海外就非常火爆,如今动视和腾讯联合推出,即将上线使命召唤多人在线第一人称射击类手游(有消息称估计会和去年刺激战场一样在年前突然公测上线&#x…

前后端分离开发模式介绍

1.1 什么是前后端分离 前后端分离是目前一种非常流行的开发模式,它使项目的分工更加明确: 后端:负责处理、存储数据前端:负责显示数据 前端和后端开发人员通过 接口 进行数据的交换。 1.2 为什么要进行前后端分离 前后端可以…

复习vue+前后端分离开发

0 复习Vue 1 MVVM:前端的设计模式,他实现了双向数据绑定,他与MVC有什么关系?MVC是没有实现双向数据绑定 2 双向数据绑定:当model数据发生改变之后,页面view层自动改动;当页面数据发生改变的时…

SpringBoot+Vue(一)商品管理系统 模式介绍 、项目改造

文章目录 md格式文档可点击下方小卡片问我获取0 复习Vue1 Vue复习-1.1 💃案例需求💃1.2 💃数据库设计与表结构💃1.3 💃服务器端💃1.3.1 💃创建SprignBoot项目💃1.3.2 💃导…