Git
要想了解Git,首先需要我们了解一下VCS——版本控制系统(version control system)
VCS
版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。版本控制系统不仅可以应用于软件源代码的文本文件,而且可以对任何类型的文件进行版本控制。
有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态,你可以比较文件的变化细节,查出最后是谁修改了哪个地方。也就是无论文件最后被修改成什么样子,你都可以轻松恢复到原先的样子,但是额外增加的工作量却微乎其微。
git区域
- 存储区域:Git软件⽤于存储资源得区域。⼀般指得就是.git⽂件夹
- ⼯作区域:Git软件对外提供资源得区域,此区域可⼈⼯对资源进⾏处理。
- 暂存区:Git⽤于⽐对存储区域和⼯作区域得区域。Git根据对⽐得结果,可以对不同状态得⽂件执⾏操作。
git配置邮箱和⽤户
第⼀次使⽤Git软件,需要告诉Git软件你的名称和邮箱,否则是⽆法将⽂件纳⼊到版本库中进⾏版本管理 的。这是因为在多⼈协作时,不同的⽤户可能对同⼀个⽂件进⾏操作,所以Git软件必须区分不同⽤户的 操作,区分的⽅式就是名称和邮箱。 git配置邮箱和⽤户
git使用基础命令
初始化:
git init
克隆:
git clone url
git clone url 新项目名
配置
//配置单个仓库
git config user.name xxx
git config user.email xxx@xx.xx
//配置全局
git config --global user.name xxx
git config --global user.email xxx@xx.xx
查看暂存区的状态
git status
将文件添加到暂存区
git add 文件名
git add *
将文件从暂存区移除
git rm --cached 文件
将文件提交到仓库
git commit -m 消息
查看历史提交
// 查看完整⽇志
git log
// 查看简短格式
git log --oneline
将仓库中的数据恢复到⼯作区 -- 将仓库中的⽂件把修改为添加的⽂件重新恢复
git restore xxxfile
将⽂件恢复到某个前⼀个节点
git revert 编号
将⽂件重置到某⼀个节点
git reset --hard 编号
警告:
在团队合作的共同操作⼀个仓库的时候, git reset 命令⼀定要慎重使⽤,在使⽤的时候⼀定要再三确认其他同学的代码是否会被重置操作⽽导 致代码丢失,导致⼀些提交记录的丢失,这些都是不可逆的,⼀定要慎重
创建⼀个新的分⽀
// 创建分⽀
git branch 分⽀名
// 创建并切换分⽀
git checkout -b 分⽀名
查看各分⽀版本
git branch -v
切换分⽀
git checkout 分⽀名
删除分⽀
git branch -d 分⽀名
将⼀个分⽀内容合并到另⼀个分⽀中
// 1. 要切换到需要合并的分⽀中
git checkout 分⽀名
// 2. 将另⼀个分⽀合并到当前分⽀中
git merge 另⼀个分⽀名
给提交添加⼀个标签(标签不能重复)
git tag 标签名 编号
使⽤标签查看
git tag
删除标签
git tag -d 标签名
关联远程仓库
// 添加远程仓库
git remote add origin 远程仓库的url、ssh
// 移除远程仓库
git remote remove origin
// 给远程仓库重命名
git remote rename 名字
查看远程仓库信息
// 显示远程仓库名
git remote
// 显示远程仓库地址
git remote -v
// 显示远程仓库详细
git remote show origin
推送到远程服务器
// 1. 进⾏权限认证
ssh-keygen -t rsa -C【ssh】
// 2. 在gitee中添加公钥
看下图
// 3. 推送
git push origin master