一.概述
版本控制工具
- 集中式
- 分布式:版本控制实际是在本地进行的
三部分:工作区—代码编译
临时存储—暂存区
本地库----历史版本
远程库—代码托管中心(GitLab、GItHub、Gitee)
二.常用命令
- 设置个签:git config user.name git config user.email
- 初始化:git init
- 查看状态:git status
- 添加到暂存区:git add 文件名 文件名 文件名
(git add. 将项目中所有文件上传)
从暂存区删除 :rw --r --r - 提交本地库:git commit -m “相关备注” 待提交文件
git commit -m. 将项目中所有文件提交到本地库
- 查看版本信息: git reflog;
- 查看版本详细信息:git log
- 修改文件
- 版本穿梭: git reset --hard XXXX(版本号通过查看版本信息获得)
三.GIT分支操作
- 分支:
- 版本控制中,同时推进多个任务,为每个任务,创建每个任务的单独分支。
- 使用分支意味着将自己的工作从开发主线上分离开,开发自己的分支时,不影响主线分支运行(即副本,为每个任务创建单独的副本,分支的低层为指针的引用)
优点:同时推进多个功能开发,提高开发效率;分支开发失败不影响其他其他分支
- 分支的操作
- git branch 分支名 :创建分支
- git branch -v :查看分支
- git checkout/switch 分支名:切换分支
- git merge 分支名:将指定分支合并到当前分支上(需要进入当前分支)
- 合并分支冲突解决
冲突:两个分支在同一文件的同一位置进行修改,分支合并时git无法替我们决定使用哪一个,必须要认为决定新代码内容。
- 正常合并:各分支间不存在冲突
- 合并存在冲突:
修改branch-test分支下test.json
修改master分支下test.json
合并中产生的冲突
四. git团队协作机制
-
团队内协作
-
跨团队协作
五.github操作
- 创建远程仓库
- 创建远程仓库别名
- 推送本地库代码到远程库
语法:git push 别名 分支名
注:推送哪个分支的代码,就要进入哪个分支
远程库中查看推送
- 拉取远程仓库分支代码到本地
语法:git pull 远程库别名 分支名
- 克隆远程库到本地库
克隆的操作:拉取代码、初始化本地仓库、创建别名
语法:git clone 远程地址
- 邀请加入团队
发送邀请,将邀请地址发送给被邀请人,被邀请人打开在github中粘贴邀请地址,接受邀请
- 跨团队协作
找到github需要协作代码,通过fork操作将其叉到自己的远程库,即可进行代码编辑与修改(通过在线以及clone方式皆可)
此处示例在线修改并提交修改
提交完毕,pull requests
五.git在vscode中使用(一般操作流程)
- 克隆仓库
在使用git对文件代码进行管理时,会有三种文件的状态
M(Modify),表示该文件存在修改
D(Delete),表示该文件被删除
U(Update),表示该文件是新添加的
保存修改,对应的git命令为git add.
提交修改,对应为git命令为git -commit
点击右上…更多操作
- 提交码前拉取代码
*注:若拉取代码产生冲突,需进行如下操作 - 暂存所有更改
- 提交
- 推送