- 版本管理
- 记录文件变化的方式,以便将来查阅特定版本的文件内容
- 人为维护文档版本的问题
- 文档数量多且命名不清晰导致文档版本混乱
- 每次编辑文档需要复制,不方便
- 多人同时编辑同一个文档,容易产生覆盖
- git
- 分布式版本管理控制系统(version control system)--代码管理工具 -- 团队协作工具
- 记录更改时间
- 具体实现
- 完成与否
- 提交(每次最好只提交一个功能)
- .git init 初始化git仓库
- git status 查看文件状态
- 查看这个文件是在工作目录还是缓存区
- git add 文件列表 追踪文件
- 把代码从工作区域放到缓存区
- git commit ‐m 提交信息(提交信息语义化) ---向仓库中提交代码
- 把代码从缓存区放到git仓库
- git log 查看提交记录
- git log --oneline查看提交信息(简化)
- 撤销
- 用暂存区中的文件覆盖工作目录中的文件
- git checkout 文件
- 暂存区和工作目录都存在
- 将文件从暂存区删除
- git rm --cached 文件
- 暂存区不存在
- 工作目录仍然存在
- 将 git 仓库中指定的更新记录恢复出来,并且覆盖暂存区和工作目录
- git reset ‐‐hard commitID
- 用暂存区中的文件覆盖工作目录中的文件
- 分支
- 主分支(master)--就是线上代码
- 第一次向 git 仓库中提交更新记录时自动产生的一个分支
- 开发基准分支(develop)--理论上,develop分支和master分支是一模一样的
- 作为开发的分支,基于 master 分支创建
- 功能分支(feature)
- 作为开发具体功能的分支,基于开发分支创建
- 分支和分支是相互不影响的,当前分支只能看到当前代码
- 切换分支之前,要将当前分支代码进行提交,如果不提交,分支代码也会切换到另一个分支
- 所以,切换分支之前要查看当前分支的状态status
- git branch 查看分支
- git branch 分支名称 创建分支
- git checkout 分支名称 切换分支
- git merge 来源分支 合并分支
- git branch ‐d 分支名称 删除分支(分支被合并后才允许删除)(-D 强制删除)
- 如果分支已经合并到其他分支,那么这时候,可以使用-d进行删除
- 如果分支已经提交,但是没有合并到其他分支,会用—D进行删除
- 自己是不能删除自己的
- git checkout -b 分支名称 创建并切换分支
- 主分支(master)--就是线上代码
- 暂时保存更改 (分支临时切换 )
- 在git中,可以暂时提取分支上所有的改动并存储,让开发人员得到一个干净的工作副本,临时转向其他工作
- 存储临时改动 git stash
- 恢复改动: git stash pop
- 克隆仓库
- git clone 远程仓库地址
- git remote add 远程仓库地址(别名)远程仓库地址
- git push origin master
- git push -u 远程仓库地址或别名 本地分支名称:远程分支名称-u 记住推送地址及分支,下次推送只需要输入git push即可
- 如果远程代码比本地代码新,代码push不成功
- 首先需要pull最新代码
- git pull 远程仓库地址 分支名称 (拉取仓库中的最新版本)
- 冲突解决
- 分布式版本管理控制系统(version control system)--代码管理工具 -- 团队协作工具
- github