1. Git概述

1.1 版本控制

image.png

1.2 Git和SVN的区别

  • SVN为代表的版本控制工具

image.png
image.png

  • Git为代表的版本控制工具

image.png
image.png

1.3 Git工作机制和代码托管平台

image.png
image.png

2. Git安装

image.png
image.png

3. Git常用命令

image.png

3.1 设置用户签名

image.png
image.png

3.2 初始化本地库

image.png
image.png

3.3 查看本地库状态

  • 首次查看(工作区没有任何文件)

image.png

  • 新增文件后再次查看(检测到未追踪的文件)

image.png

3.4 添加暂存区

image.png

  • 查看状态(检测到暂存区有新文件)

image.png

  • 如何从暂存区中删除这个文件呢?

image.png

3.5 提交本地库

  • 将暂存区的文件提交到本地库

image.png

  • 查看状态(没有文件需要提交)

image.png

3.6 修改文件

  • 修改文件,查看状态(检测到工作区有文件被修改)

image.png

  • 将修改的文件再次添加到暂存区,查看状态

image.png

  • 提交到本地库

image.png

3.7 历史版本

查看历史版本

image.png

版本穿梭

image.png

4. Git分支

image.png

4.1 什么是分支

image.png

4.2 分支的好处

image.png

4.3 分支的操作

image.png

查看分支

image.png

创建分支

image.png

修改分支

image.png

切换分支

image.png

合并分支

image.png

产生冲突

image.png

解决冲突

image.png
image.png

5. Git团队协作机制

5.1 团队内协作

image.png

5.2 跨团队协作

image.png

6. GitHub操作

6.1 创建远程仓库

image.png
image.png

6.2 远程仓库操作

创建远程仓库别名

image.png

推送本地分支到远程库

image.png

拉取远程库到本地库

基本语法:
git pull 别名 分支名

克隆远程库到本地库

image.png
image.png

6.3 团队协作

团队内协作

跨团队协作

image.png
跨团队协作的人,fork这个远程仓库
image.png
跨团队协作的人,发送 Pull requests请求
image.png

6.4 SSH免密登录

image.png
image.png
image.png
image.png

7. IDEA集成Git

7.1 配置Git忽略文件

image.png
image.png

7.2 定位Git程序

image.png

7.3 初始化本地库

image.png

7.4 add&commit

选中文件,右键即可

7.5 切换版本

image.png

7.6 创建分支&切换分支

8. 其它JetBrains编辑器集成Git

8.1 CLion

  • 首先,选中某个目录下的文件夹当作本地仓库(Repository),然后将码云新创建的仓库的地址复制下来,输入以下命令。实现本地与远程的联调

image.png

  • 本地项目绑定git(即 将远程克隆下来的git文件目录拷贝到项目路径下)

image.png

  • 注意文件的颜色(红色代表 选中的状态)

image.png

  • git add .(add到Index/Stage)

image.png

  • commit(commit到Repository)

image.png
image.png
image.png

  • git push(push到Remote)

image.png
image.png

8.2 PyCharm

image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png

9. 后续操作

后续如果还需要增删项目文件,基本操作还是一样

  • 这里我新建了一个项目文件,有以下提示(然后这里我想着把这个项目文件编写完毕后再执行 git add命令,所以选择cancel)

image.png

  • 编写完毕并确认代码无误后,就可以执行git add以及后续的命令了

image.png
image.png
image.png
image.png
image.png
image.png
image.png