Git
概述
- Git是一个分布式版本控制系统,用于追踪文件和目录的变更
- 源代码管理工具
- CVS
- SVN
- VSS
- Git
- 主要功能
- 记录历史信息
- 团队协作
- 三个区域
- 版本库:已提交到Git仓库中的数据
- 暂存区:下一次要提交的文件的快照
- 工作目录:编写代码的目录
使用
初始化仓库
//在项目文件夹中 git init //如果项目文件夹不存在,创建文件夹并初始化 git init 文件夹名
配置
git config --global user.name "XXXXX" git config --global user.email "xxx@xx.xxx"
添加文件到缓存区中
git add 文件名 //添加所有上次提交后改变的文件 git add .
查看git状态
//显示暂存区与工作区状态不同的文件,其中包含了已修改但未暂存或已经暂存但没有提交的文件 git status
提交
git commit -m "提交说明" //会打开一个文件,在其中添加注释,适合于注释内容比较多和需要换行的情况 git commit
查看命令帮助
git --help 命令名 如 git --help commit
查看提交历史
git log //n:显示的提交数 git log -n
撤销
舍弃工作目录中对一个文件的修改(修改的文件未被暂存或提交)
//这是一个危险动作 git checkout 文件名
舍弃工作目录中所有未保存的变更(文件可能已经暂存,也可能没有,但未被提交)
//这是一个危险动作 git reset --hard
从工作目录中删除未跟踪(新添加的未缓存或提交过)的文件
//-f:强制删除 //-d:删除未跟踪的文件 git clean -fd
修补最后一次提交
//只修改最后一次提交的注释 git commit -m "最新注释" --amend //新添加了内容,先把新内容添加到暂存区 git add . //提交 git commit -m "新注释" --amend
恢复到某次提交
git reset --hard 提交ID
显示所有提交历史
git reflog
重要的目录结构
- objects 目录存储所有数据内容
- refs 目录存储结构指向数据(分支)的提交对象的指针
- HEAD 文件 指示目前检出的分支
- index文件保存暂存区信息
远程连接
注册Gitee账号
登录Gitee
创建一个仓库
配置远程
git remote add 远程名称 地址 例如: git remote add origin https://gitee.com/YiyeSss/second_hand.git
拉取
//拉取远程(允许不相同的历史) git pull origin master --allow-unrelated-histories
推送
git push 远程名称 分支名 例如: git push origin master
克隆
git clone 远程仓库地址 文件夹名