Git的简单使用
- 2020 年 4 月 24 日
- 筆記
题外话
本文章简单介绍了git的基础使用方法,只适用于初学者
什么是git?
Git是目前世界上最先进的分布式版本控制系统。
那么问题来了,什么是版本控制?
可能很多人都会经历或听过这种场景:我们在写论文的时候,写完了会让指导老师去审核,老师会提出问题让我们去修改,一般情况下都不会在原文件上进行修改,而是复制一份进行修改,万一修改完指导老师说还不如上一份,还可以找到原文件,如果修改不是一次,那么就会产生多个论文。
在上面场景中,每篇论文都是一个版本,这是手动进行的版本控制。
仓库分哪几种
- 本地仓库
- 建立在本地的文件夹
- 远程仓库
- 建立在互联网上Git托管平台的服务器内
Git的安装
-
打开官网下载符合自己操作系统的版本
//git-scm.com/
-
安装Git,这里一直Next默认安装就好。
-
安装成功后在开始菜单中会有Git选项,选项卡下有三个程序
-
并且在电脑任意文件夹下右键会出现Git选项
-
在当前文件夹右键点击
Git Bash Here
进入命令行,在命令行上方会显示当前项目的位置。
Git本地仓库的使用
-
初始化本地仓库
-
通过命令
git init
把这个目录变成git可以管理的仓库
-
会在当前项目生成一个隐藏文件夹:
.git
,如果删掉这个文件,那么会丢失当前项目的所有版本信息
-
-
配置密钥对
-
因为Git是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识。
-
配置系统用户
git config --global user.name "suyang"
git config --global user.email "1078866128@qq.com"
注意:--global
为全局配置命令,不加为某个项目的特定配置。当然你也可以对某个仓库指定的不同的用户名和邮箱。 -
配置项目用户
git config user.name "suyang"
git config user.email "1078866128@qq.com"
-
这里配置成功是没有任何提示的
-
-
把文件添加到版本库
-
使用
git add
命令将文件添加到暂存区
-
使用
git commit -m "版本信息"
命令将文件添加到本地仓库。(“版本信息”是对当前提交的版本的注释)
-
现在已经将文件成功提交到本地仓库了,可以使用
git status
命令查看当前项目的状态,是否有文件没有提交。
-
如果我对提交的文件进行了修改,继续使用
git status
查看结果
-
就会提示我有文件已经修改但是未提交
-
-
查看历史的版本信息
-
使用
git log
命令查看提交日志,当日志过多,被隐藏部分信息时,按回车键显示剩余信息,显示完毕后,按q键退出当前信息状态。在这里可以查看到各个版本的版本号和版本信息。
-
这里因为我之前提交过版本信息,所以会有多条版本信息。
-
使用
git reflog
命令查看最近git的所有操作日志。进行版本回退时,可以参考.这里同样可以查看到历史版本的版本号,版本信息。
-
-
版本的回退
- 使用
git reset --hard 版本号
进行指定版本的跳转
- 这里我随意跳转到之前上传的一个版本
- 使用
Git线上仓库的使用
-
选择Git线上仓库平台(这里我拿gitee来进行演示)
- github:
//github.com
- github是全球最大的开源社交编程及代码托管网站
- coding:
//dev.tencent.com
- 与腾讯云达成战略合作,基于云计算技术的软件开发平台,集项目管理、代码托管、运行空间、质量控制为一体。
- gitee:
//gitee.com
- 码云(gitee.com)是 OSCHINA.NET 推出的代码托管平台,支持 Git 和 SVN,提供免费的私有仓库托管
- github:
-
线上仓库的创建
-
首先在右上角找到新建仓库
-
然后填写仓库的基本信息
- 仓库名称就写本次项目的名字,路径会自动生成。语言那里写本次项目使用的语言。其他设置都默认。
-
会生成一个当前仓库的地址,从本地上传至仓库需要这个地址
-
-
仓库的连接
git remote add origin //gitee.comsu_yang6/yinzuo.git
git remote add 连接别名 远程仓库地址
- 然后使用
git remote -v
命令查看现有连接。
-
文件的上传
-
git push -u origin master
-
git push -u 连接别名 分支名
,这里会提示输入账号密码,是输入登录远程仓库平台的账号密码。
-
账号密码输入正确后就会上传至远程仓库。
-
-
远程库的克隆
git clone //gitee.comsu_yang6/yinzuo.git
git clone 远程仓库地址
- 注:
- 克隆之后的项目,不需要初始化,会自动采取克隆项目的版本库
- 克隆之后的项目,再次提交时,不需要建立连接,直接推送即可
-
下面贴一些其他常用的Git命令
-
"git add 文件名"
添加一个文件 -
"git add 文件夹名/"
添加一个文件夹 -
"git add --all"
添加所有文件 -
"git add ."
添加所有文件 -
"git log --oneline"
以一行的方式,列出简短的日志 -
"git log -n"
n为数字,表示最近的n条日志 -
撤销工作区的修改:
"git checkout -- 文件名"
-
撤销暂存区的修改:
"git reset HEAD 文件名"
"git checkout -- 文件名"
-
删除工作区的文件:直接右键删除即可