以下内容如有错误,欢迎指正
基本概念
Git是一个版本控制系统,是一种在本地运行的代码托管系统,与我们常知道的github和gitee这类线上代码托管有所不同。
Git有工作区,暂存区以及本地版本库的概念,也可用于连接github和gitee这类远程仓库,使用Git命令基本上也相当于将文件在这四个区域转移。
我通过简单的类比来介绍下这四个概念:
比如你正在写一篇文章,但是需要写的规范整洁,但是防止写错你准备采用两张纸,一张是正式写作的纸,另一张是草稿纸,写完后交给老板。老板觉得你写的不行,需要重新修改,于是你得到了新修订版本,反反复复n次以后终于完成了最后的版本。
为了避免你写的文章丢失或者你想看看下别人的文章于是你进网站进行上传和下载文章
工作区就相当于正式写作的纸
暂存区就相当于草稿纸
本地版本库就相当于你写的所有版本的集合
远程仓库就相当于可供任何人上传下载文章的网站
准备工作
Git安装
首先安装Git(很简单不详细说明了)
安装完会有Git Bash,Git CMD ,Git GUI三个程序
Git Bash需要使用linux命令
Git CMD需要使用windows命令
Git GUI是图形化界面
Git初始化设置
我们这里以Git Bash为例:
先进行初始化设置
git config --global user.name #你的用户名
git config --global user.email #你的邮箱
注意邮箱一定要和远程仓库邮箱匹配,用户名随意
项目初始化
我创建了一个名叫test文件夹位于D:/Code/test
输入:
cd D:/Code/test
然后:
git init
git init用于初始化该项目的本地版本库,也就是说如果有其他项目使用Git也需要重新初始化一次
远程仓库初始化
首先注册账号github和gitee都可以
远程仓库为确保安全一般需要绑定sshkey
windows使用win+R打开cmd
输入生成命令:
ssh-keygen -t rsa -C "你的邮箱"
找到id_rsa.pub复制里面的内容去网站个人设置绑定sshkey
然后网站建立一个仓库,复制结尾为.git的网址
Git里面输入
git remote add origin http://xxx.git
git push -u origin master
Git辅助命令
-
查看暂存区内容
git status
-
查看本地版本库内容
git log
-
Git控制台清屏
clear
Git提交和恢复命令
文件提交
1. 工作区->暂存区:
- 提交某一个文件:
git add 文件名
- 提交所有文件:
git add *
2.暂存区->本地版本库:
git commit -m "这里是文件修改的描述"
3.本地版本库->远程仓库:
git push #simple方式
git push origin master #matching方式
文件回退/下载
1.暂存区回退/清空:
-
回退单个文件
暂存区回退
暂存区->工作区git restore --staged 文件名
git restore 文件名
-
清空暂存区
删除暂存区指定文件
清空暂存区所有文件git rm --cached 文件名
rm .git/index
2.本地版本库回退
-
回退单个文件
本地版本库->工作区git restore -s 版本id 文件名
-
回退所有文件
本地版本库和暂存区都回退,保留工作区(即暂存区和本地版本库内容一致):
只回退本地版本库,保留工作区和暂存区(即暂存区和工作区内容一致):git reset 版本id
本地版本库和工作区都回退,暂存区内容清空:git reset --soft 版本id
git reset --hard 版本id
3.远程仓库->本地版本库
从远程仓库下载到本地版本库:
git pull #simple方式
git pull origin master #matching方式
从别人远程仓库下载到本地版本库
git clone https://xxx.git