目录
- 一、介绍 Git
- 二、安装 Git
- 三、 常用 linux 目录
- 四、Git 的必要配置
- (1) 查看和删除之前的配置
- (2) 配置 Git
- 五、Git 基本理论
- 六、Git 项目搭建
- 七、Git 文件操作
- 八、分支
- Git 笔记 ❀❀❀
- (1) 常规使用
- (2) 分支
一、介绍 Git
???? VCS:Version Control System 版本控制系统
???? 多人开发必用版本控制
???? 版本控制工具: Git、SVN、CVS、VSS、TFS
???? 分布式版本控制系统(Git):可立即看到代码的改变
???? 集中式版本控制系统(SVN):需要*服务器
???? Linus 两周写完 Git 代码的核心
二、安装 Git
???? 英文:https://git-scm.com/
???? https://git-scm.com/download/win
???? 中文:https://git.p2hp.com/
???? 卸载 Git:
① 删除环境变量
② 控制面板 - 程序 - 删除
???? 通过【next】按钮安装
???? Git 环境变量安装的时候配置好的(无需自己配置)
三、 常用 linux 目录
???? cd
???? cd …
???? pwd
???? ls
???? ll
???? touch:新建文件
???? rm:删除文件
???? mkdir:新建一个目录
???? rm -r: 删除一个文件夹
???? mv:移动文件
???? reset
???? clear: 在 Windows 中是 cls
???? history: 查看历史命令
???? help
???? exit
四、Git 的必要配置
(1) 查看和删除之前的配置
# 查看 git 全部可配置项
git config -l
# 查看系统 git 配置(系统对 git 的配置)
git config --system --list
# 查看用户对 git 的配置
git config --global --list
全部的配置都是写在本地(电脑)的一个配置文件上
linux 中配置文件在 etc 目录下
系统配置:Git 安装目录下的 etc 目录下的 gitconfig 文件夹存有系统配置项
全局配置:
(2) 配置 Git
git config --global user.name "ZhangGuoQing"
git config --global user.email "3665668856@qq.com"
五、Git 基本理论
???? Git 本地有三个工作区:工作目录(Working Directory)、暂存区(Stage/Index)、资源区(Repository / Git Directory)
???? Working Directory: 平时存放项目代码的地方
???? Stage / Index: 临时存放你的改动(事实上就是一个文件,保存即将提交到文件列表的信息)
???? Repository(本地仓库):安全存放数据的位置,此处有我们提交的全部版本的数据(其中 HEAD 指向最新放入仓库的版本)
远程 Git 仓库
暂存区和本地仓库是在
.git
文件夹下,它是个隐藏文件夹
Git 工作流程:
① 在工作目录中 添加、修改、删除 文件
② 将需要版本控制的文件放入暂存区
③ 将暂存区的文件提交到本地仓库,进而提交到远程仓库
git 管理的文件有三种状态:
① 已修改(modified)
② 已暂存(staged)
③ 已提交(committed)
六、Git 项目搭建
???? 创建全新的本地仓库
git init
???? 克隆远程仓库
把远程代码拷贝到本地
git clone [url]
url 是远程仓库的地址(该地址来自于 Gitee 或 GitHub)
git clone https://gitee.com/whongbin/snowflakes_fall.git
七、Git 文件操作
文件有四种状态:
???? ① Untracked(未跟踪):此文件在文件夹中,但并没有假到 git 库,不参与版本控制。通过 git add
命令可把该文件的状态修改为 Staged
新创建的文件,处于该状态。执行 git add 可将其存入暂存区
???? ② Unmodify:文件已入库,未修改。版本库中的文件快照与本地文件夹中完全一致。
此种文件有2种去处:如果它被修改,则变为 Modified;如果使用 git rm
将其移出版本库,则它的状态修改为 Untracked
???? ③ Modified:文件已修改,仅仅是修改并未进行其他操作。此种文件有两种去路:
git add 进入暂存状态 Staged
git checkout 丢弃修改过的文件,返回到 Unmodify 状态【git checkout 从库中取出文件,覆盖当前修改】
???? ④ Staged:暂存状态。执行 git commit
将修改同步到库中,此时库中的文件和本地文件一致,文件为 Unmodify 状态【执行 git reset HEAD filename
取消暂存,文件状态变为 Modified】
查看当前文件夹中全部文件的状态
git status
八、分支
Git 笔记 ❀❀❀
(1) 常规使用
git init
git add .
git commit -m
git push
git --version
clear
git status: 查看工作区文件和暂存区文件的状态
git log: 查看操作日志(时间由近至远)
git log --pretty=oneline
git log --oneline
git reflog
git reset --hard 67c89: 前进或后退历史版本
hard: 暂存区、工作区和本地库同步发生改变
mixed:暂存区和本地库同步改变,工作区不发生改变
soft:本地库发生改变,但暂存区和工作区都不发生改变
找回本地库或暂存区删除的文件: git reset --hard 67c89: 前进或后退历史版本
git diff [filename]:比较工作区和暂存区文件差异
git diff HEAD filename: 比较暂存区和本地库文件差异
git diff de5t6 filename: 比较暂存区和本地库文件差异
(2) 分支
# 查看全部分支
git branch -v