Git
1. Git介绍
- 用于源代码管理, 是先进的分布式代码管理工具
- 源代码管理的作用:
- 进行版本控制
- 方便多人协同开发
2. Git本地结构
- 仓库初始化
git init
- 设置仓库作者信息
git config user.name zs git config user.email zs@itcast.cn
3. git基本操作 (重点)
- 工作区变化提交到暂存区
git add 文件名 git add .
- 暂存区变量提交到仓库区
git commit -m 注释
- 查看仓库状态
git status
- 查看代码版本
git log
4. 撤销修改和切换版本
4.1 撤销修改
- 撤销修改
- 按照暂存区还原工作区
git checkout 文件名
- 按照仓库区还原暂存区
git reset HEAD
4.2 切换版本
- HEAD 表示当前版本
- HEAD^ 表示当前版本的上一个版本
- HEAD~100 表示当前版本的前100个版本
- 切换到上一个版本(并且让暂存区也还原到上一个版本)
git reset HEAD^
- 切换到指定的版本(版本号前7位)
git reset 74b412f
- 查看操作历史
git reflog
5. 删除文件
- 删除文件
- 删除工作区和暂存区文件
git rm 文件名
- 提交新版本(仓库区删除文件)
git commit -m 注释
- 删除工作区和暂存区文件
- 撤销误删
- 如果已经提交了版本, 先切换版本
git reset HEAD^
- 还原工作区
git checkout 文件名
- 如果已经提交了版本, 先切换版本
- 拓展命令
- 只删除暂存区文件
git rm --cached 文件名
- 版本切换
- 还原仓库区和暂存区
git --mixed reset HEAD^
默认 - 只还原仓库区
git --soft reset HEAD^
- 还原仓库区,暂存区,工作区
git --hard reset HEAD^
- 还原仓库区和暂存区
- 只删除暂存区文件
三. Git远程管理
1. 创建远程仓库
2. git远程操作 (重点)
- 代码托管网站
gitee.com
- 从远程仓库第一次下载代码(自动生成本地仓库)
git clone https://gitee.com/cz_zzz/InfoNews10.git
- 将本地版本推送到远程仓库
git push
- 将远程仓库的版本拉取到本地仓库
git pull
3. 代码冲突
- 代码冲突原因:push时其他开发者已经提交了新版本,导致
本地版本和远程版本不一致
- 解决办法:
- 先
pull
拉取远程的最新版本, git会自动对代码进行和并
- 如果修改的是
不同文件
,自动合并成功,只需要将合并后的内容生成新版本push即可 - 如果修改的时
相同文件
, 自动合并失败,需要和其他开发人员沟通
,手动修改冲突
,再生成新版本push
- 先
4. 标签
-
作用: 对
重要的版本
进行标记
, 方便快速切换到指定到版本 -
经理:
- 给指定的版本加标签
git tag -a v1.0 -m "1.0版本" 3e7a2bb
- 将标签推送到远程仓库
git push origin v1.0
- 给指定的版本加标签
-
张三:
- 拉取远程数据
git pull
- 查看所有标签
git tag
- 查看标签信息
git show v1.0
- 切换到标签对应的版本
git checkout v1.0
- 拉取远程数据
5. 分支
- 作用: 当开发新功能时, 需要在新的分支上进行开发, 避免污染主分支(主分支上只保留稳定版本)
- 查看分支 git branch
- 经理:
- 创建新分支dev
git branch dev
- 将新分支推送到远程仓库
git push origin dev
- 合并分支
git chectout master
再git merge dev1
- 创建新分支dev
- 张三:
- 先拉取最新数据
git pull
- 切换到dev分支
git checkout dev1
- 在dev分支上进行开发
- 先拉取最新数据