git笔记
一、基本操作
- clone:克隆,就是将远程仓库复制到本地
- push:推送,就是将本地仓库代码上传到远程仓库
- pull:拉取,就是将远程仓库代码下载到本地仓库
- Commit:提交,就是将本地工作区代码上传到本地仓库中
二、相关概念
- 工作区(Working Directory):就是你电脑本地硬盘目录,一般是项目当前目录
- 版本库(Repository):工作区有个隐藏目录.git,它就是Git的本地版本库
- 暂存区(stage):一般存放在"git目录"下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)
- 分支(Branch):Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD
1.Git的工作机制
2.Git的作用
三、Git本地库实战
1.常用命令预览
- git init 初始化本地库
- git config --global user.name 用户名----> 设置用户签名的用户名部分
- git config --global user.email 邮箱----> 设置用户签名的邮箱部分
- git status ---->查看本地库状态
- git status –s ---->更加简洁的查看本地库状态
- git add 文件名 ---->添加到暂存区
- git commit -m “日志信息” 文件名----> 提交到本地库
- git reflog ---->查看历史记录
- git reset --hard HEAD^ ---->一次回退一个版本(回退)
- git reset --hard HEAD~n ---->一次回退n个版本
- git reset --hard 版本号 ----> 回到最新的版本(穿梭)
- git log 【文件名】---->查看日志
- git log --pretty=oneline ---->如果日志很多,可以在一行显示
- git checkout – a.txt ---->未add,未commit,撤销修改(还原原来的文件)
- git reset---->已add,未commit,撤回暂存区
- git branch ---->分支名 创建分支
- git branch -v----> 查看分支
- git checkout 分支名 ---->切换分支
- git merge 分支名 ---->把指定的分支合并到当前分支上
2.查看文件状态信息
- On branch master :表示主分支
- Untracked files:表示未跟踪状态
- Untracked 未跟踪(未被纳入版本控制)
- Tracked 已跟踪(被纳入版本控制)
- Unmodified 未修改状态
- Modified 已修改状态
- Staged 已暂存状态
- 红色表示新建文件或者新修改的文件,都在工作区
- 绿色表示文件在暂存区
四、GitHub远程库实战
gitHub地址:https://github.com/
码云地址: https://gitee.com/
GitLab地址: https://about.gitlab.com/
1.Github实战—团队内协作
2.Github实战—跨团队协作
五、Git工作流
1.简单的分支
2.复杂分支
3.分支种类
主干分支 master
- 主要负责管理正在运行的生产环境代码。永远保持与正在运行的生产环境完全一致。
开发分支 develop
- 主要负责管理正在开发过程中的代码。一般情况下应该是最新的代码。
bug修理分支 hotfix
- 要负责管理生产环境下出现的紧急修复的代码。 从主干分支分出,修理完毕并测试上线后,并回主干分支。并回后,视情况可以删除该分支。
发布版本分支 release
- 较大的版本上线前,会从开发分支中分出发布版本分支,进行最后阶段的集成测试。该版本上线后,会合并到主干分支。生产环境运行一段阶段较稳定后可以视情况删除。
功能分支 feature
- 为了不影响较短周期的开发工作,一般把中长期开发模块,会从开发分支中独立出来。 开发完成后会合并到开发分支。