Git学习

# 一、目前开发存在的问题?

1、开发有没有可能是一个人?

不可能

  • 公司中基本都是团队开发

​ A、B、C、D 四个人开发一个项目

目前团队开发存在的问题
image-20210120100804334

二、版本控制工具

  1. Git:分布式版本控制工具

Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

在远程和本地都有同样的代码,如果远程或者本地出现故障,可能通过另一个本地代码进行还原【避免了单点故障】

作者:就是Linux的作者【Linus Torvalds】

  1. SVN:集中式的版本控制工具,只有一台主机服务器【有单点故障】

三、下载与安装

1、官网:https://git-scm.com/

2、下载地址:https://git-scm.com/download/win

3、安装:闭着眼睛下一步

安装成功

4、配置提交用户名和邮箱

4.1 基本命令

基本命令
git --version

|

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

|

四、Git的工作流程

git的工作流程
image-20210120100549436
image-20210120100650188
  • 基本概念
  1. 本地仓库:一个.git隐藏文件夹【不要去动其中的东西】
  2. 工作区:包含.git隐藏文件夹的目录
  3. 暂存区:本地仓库中一个文件
  4. 远程仓库:跟本地仓库一个性质的云端仓库
Git中的概念

五、基本命令

1、初始化本地仓库

git init
image-20210120103439283

2、添加内容到暂存区

git add 文件名【.】

3、提交到本地仓库

git commit -m '提交的日志信息'
image-20210120104234062

4、查看日志、状态

git log [--oneline]

git status 【-s】

5、回退版本

5.1 方式一 git reset 【了解】

git reset --hard 版本号
回退一个版本或多个版本
git reset --hard head^ :回退到上一个版本
git reset --hard head~2:回退到上几个版本
image-20210120110933591

如果忘记了这个版本号,是不是就回不去了

5.2 方式二 git checkout

git checkout 版本号
git checkout 版本号 -b 分支名

用分支来保存历史版本

6、分支

分支就是一条时间线

6.1 查看分支

git branch

6.2 创建分支

git branch 分支名
image-20210120142952489

6.3 切换分支

git checkout 分支名

6.4 删除分支

要切换到master分支,自己不能删除自己

git branch -d 分支名

6.5 合并分支

git merge 被合并的分支名

谁去合并其他分支,那么就得在谁这个分支操作

合并的时候,有可能会产生冲突。

​ 多个分支修改了同一个文件同一处地方,就可能产生冲突。

​ 解决冲突时,需要商量后,才能决定如何合并有冲突的文件

合并分支产生了文件冲突
冲突的文件内容

7、远程仓库相关操作

1、造型

Github:最大交友(交换代码)网站

Gitee:中国版的交友(码云)网站

Gitlab:一般是Linux中搭建的版本控制工具

2、Gitee

2.1 注册

注册

2.2 登录

登录

2.3 创建远程仓库

创建远程仓库【建立创建一个公开的空仓库】
image-20210120150731159

3、克隆仓库到本地

git clone 远程仓库的地址【目前都是https的方式】

4、查看关联远程仓库

git remote [-v]

5、推送内容到远程仓库

git push origin master
origin:远程仓库的别名
master:远程仓库的分支名

6、拉取远程内容到本地

git pull 远程仓库的别名 远程仓库的分支名

8、忽略指定内容

在真实开发中,有很多内容是不需要提交的。因为某些文件提交,可能就会产生冲突

譬如:我们使用idea开发工具,而idea会为每个工程创建一个独立的.idea目录,其中存放都是当前idea软件的一些配置信息,如果把内容提交到了远程仓库,那么其他开发人员拉取远程仓库的内容时,会把.idea目录一并拉取下来,而它本地是有.idea目录的,那么该目录很有可能就会产生冲突。

  • 实现步骤
  1. 在初始化本地仓库之后,第一次提交内容之前,创建.gitignore文件。
  2. 把要忽略的内容写入到.gitignore文件中【内容可以使用通配符,如*】
  3. 提交时,把.gitignore文件一并提交,并推送到远程

六、TortoiseGit

1、概念

  • 一款图形化操作Git的工具,每个工具的菜单完成内容,底层都是git命令

2、安装

  • 闭着眼睛下一步
安装成功
image-20210120161253685

3、使用:暂不提供

七、IDEA使用Git

1、IDEA集成Git

默认会自动集成

idea集成Git
image-20210121092229807

2、idea工程交给Git来管理

idea工程交给Git来管理

posted @ 2021-07-20 21:41  牛奶配苦瓜  阅读(33)  评论(0编辑  收藏  举报