目录


一、Git 概述

1、版本控制

2、版本控制优点 

3、Git 工作机制  

4、Git 和代码托管中心  

二、Git安装

三、Git 常用命令  

1、设置用户签名 

2、常用指令

四、Git 分支操作  

五、Git 团队协作机制 

1、团队内协作

2、跨团队协作

 六、远程库1--GitHub 操作

github的SSH 免密登录  

七、IDEA 集成 Git

7.1 配置 Git 忽略文件  

7.2、在IDEA中定位Git

 八、IDEA集成Gitee和Github

 8.1、添加Gitee账号

8.2、将本地代码push到码云远程仓库 

 8.3、将远程仓库代码pull到本地

 8.5、码云复制Github项目

8.6、 从远程仓库克隆项目

8.7、IDEA中的Git的log信息 


一、Git 概述

1、版本控制

版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。

版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本,

方便版本切换

gitlab显示excel gitlab看不到项目_gitee

 

2、版本控制优点 

gitlab显示excel gitlab看不到项目_github_02

 

3、Git 工作机制

gitlab显示excel gitlab看不到项目_gitlab显示excel_03

 

4、Git 和代码托管中心

代码托管中心是基于网络服务器的远程代码仓库,一般我们简单称为远程库。

  1. 局域网
  1. GitLab
  1. 互联网
  1. GitHub(外网)
  2. Gitee 码云(国内网站)

二、Git安装

官网地址: Git官网地址下载最先版

一路傻瓜式安装即可。


右键任意位置,在右键菜单里出现Git Bash Here  Git GUI Here 即安装成功

gitlab显示excel gitlab看不到项目_github_04

 注意:你需要哪个文件夹目录(比如项目目录)进行版本控制,你就打开相应的文件夹(里面时具体要托管的文件)右击,选择Git Bash Here,进入git终端。首先初始化该文件夹为一个Git本地库:使用命令git init


三、Git 常用命令

gitlab显示excel gitlab看不到项目_远程仓库_05

 

1、设置用户签名

签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看

到,以此确认本次提交是谁做的。 Git 首次安装必须设置一下用户签名,否则无法提交代码

git config --global user.name 用户名

git config --global user.email 邮箱-----可以随便,Git不检查格式


2、常用指令

git init

将某个文件夹目录,当作托管的本地库:使用命令git init。

gitlab显示excel gitlab看不到项目_远程仓库_06

git status 查看本地库状态指令:

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

gitlab显示excel gitlab看不到项目_git_07


2、新增文件( hello.txt )或者改变本地库任意文件后,再次查看


检测到未追踪的文件:


gitlab显示excel gitlab看不到项目_git_08


3、 添加暂存区   git add 文件名

        git add hello.txt  将hello.tet文件添加到本地库的暂存区:即可以追踪它了,此时可以撤销修改,未提交呢

gitlab显示excel gitlab看不到项目_gitlab显示excel_09

 

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

                git commit -m " 日志信息 " 文件名

                日志信息:这次修改操作的说明,以识别这个版本做了什么修改


gitlab显示excel gitlab看不到项目_远程仓库_10


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

gitlab显示excel gitlab看不到项目_远程仓库_11

如果此时再次修改hello.txt文件,则会出现 (检测到工作区有文件被修改)

将修改的文件再次添加暂存区,再次commit,添加这次修改的说明

5、git reflog 查看版本信息   git log 查看版本详细信息

gitlab显示excel gitlab看不到项目_gitlab显示excel_12

6、版本穿梭:

        git reset --hard 版本号

        1、首先查看当前的历史记录,可以看到当前是在

087a1a7

这个版本


gitlab显示excel gitlab看不到项目_gitee_13


        2、切换到 86366fa 版本,也就是我们第一次提交的版本


gitlab显示excel gitlab看不到项目_gitee_14


 注意:Bash中的复制:选中内容即复制成功,粘贴:选中内容后,在输入位置按下鼠标中键(滚轮)即可实现粘贴。

        3、切换完毕之后再查看历史记录,当前成功切换到了 86366fa 版本


gitlab显示excel gitlab看不到项目_git_15


 


四、Git 分支操作

gitlab显示excel gitlab看不到项目_远程仓库_16

在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独

分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时

候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是

一个单独的副本。(分支底层其实也是指针的引用)

gitlab显示excel gitlab看不到项目_github_17

 

可以同时并行推进多个功能开发,提高开发效率。

各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败

的分支删除重新开始即可。

gitlab显示excel gitlab看不到项目_远程仓库_18


 

 注意:在主分支下创建分支,可以在分支中修改,然后切换到主分支合并修改的分支。

合并中有可能产生冲突:

        合并分支时,两个分支在 同一个文件的同一个位置 有两套完全不同的修改。 Git 无法替

我们决定使用哪一个。必须 人为决定 新代码内容


解决合并冲突:

手动选择两个多分支修改



五、Git 团队协作机制

1、团队内协作

gitlab显示excel gitlab看不到项目_远程仓库_19

2、跨团队协作

gitlab显示excel gitlab看不到项目_gitee_20

GitHub 操作

1、创建远程仓库

一般一个仓库相当于一个托管的项目

gitlab显示excel gitlab看不到项目_gitlab显示excel_21

gitlab显示excel gitlab看不到项目_github_22

 可以在C盘/用户/你现在使用的用户那个文件夹下那里创建一个git.ignore文件,加入忽略的文件配置。

远程仓库操作

gitlab显示excel gitlab看不到项目_远程仓库_23

克隆远程仓库到本地:

公司给了你一个,github上的仓库地址(https协议的或者SSH协议),你需要在某个文件夹下,右键打开Bash,输入clone命令: git clone 远程地址j即可拷贝下来程序到你得本地

3、邀请加入团队

如:https://xxx.com/用户名/git-shTest/invitations 这个链接,你收到了这个邀请,登录你得github账号界面,在浏览器的地址输入栏输入这个邀请链接(注意一定在你得github页面)

4、跨团队协作---可以了解了解Fork

5、

github的SSH 免密登录

gitlab显示excel gitlab看不到项目_gitee_24

具体步骤:

在当前用户的家目录如:C:/用户/HP/

1、运行命令生成 .ssh 秘钥目录 [ 注意:这里 -C 这个参数是大写的 C ]

         ssh-keygen -t rsa -C 你之前设置的邮箱

2、按3次Enter键,如下:

gitlab显示excel gitlab看不到项目_gitlab显示excel_25

 这就在当前用户家目录下生成了.ssh文件夹:

gitlab显示excel gitlab看不到项目_git_26

有这两个文件,密钥

复制 id_rsa.pub 文件内容

4、登录 GitHub,点击用户头像→Settings→SSH and GPG keys

5、

gitlab显示excel gitlab看不到项目_gitlab显示excel_27

6、 

gitlab显示excel gitlab看不到项目_远程仓库_28

 

七、IDEA 集成 Git

7.1 配置 Git 忽略文件

gitlab显示excel gitlab看不到项目_git_29

Maven 工程的 target 目录

与项目的实际功能无关,不参与服务器上部署运行。把它们忽略掉能够屏蔽 IDE 工具之

间的差异。

创建忽略规则文件 xxxx.ignore (前缀名随便起,建议是 git.ignore )

        

        这个文件的存放位置原则上在哪里都可以,为了便于让~/.gitconfig 文件引用,建议也放在用户家目录下。git.ignore 文件模版内容如下:

# Compiled class file *.class # Log file *.log # BlueJ files *.ctxt # Mobile Tools for Java (J2ME) .mtj.tmp/ # Package Files # *.jar *.war *.nar *.ear *.zip *.tar.gz *.rar # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid* .classpath .project .settings target .idea *.iml

2、在.gitconfig 文件中引用忽略配置文件(此文件在 Windows 的家目录中)

[user] name = Layne email = Layne@atguigu.com [core] excludesfile = C:/Users/asus/git.ignore 注意:这里要使用“正斜线(/)”,不要使用“反斜线(\)”



7.2、在IDEA中定位Git

Git设置本地仓库,远程仓库使用GitHub/Giteee(码云),因此IDEA中操作Git、GitHub、Gitee实现版本控制,push到远程仓库,pull回IDEA项目中,以及clone到本地(一般给的github仓库地址或者gitee仓库地址,你在本地电脑创建一个文件夹,用git管理init后,执行git clone 远程仓库地址)即可。

1、在IDEA中安装Git、GitHub、Gitee插件

gitlab显示excel gitlab看不到项目_gitlab显示excel_30

 

gitlab显示excel gitlab看不到项目_gitlab显示excel_31

 2、进入你得项目中:

选择VSC----create Git Repository

创建并初始化本地仓库

gitlab显示excel gitlab看不到项目_gitee_32

 3、选中项目,右键   添加暂存区

gitlab显示excel gitlab看不到项目_远程仓库_33

 

 4、提交本地库commit

gitlab显示excel gitlab看不到项目_git_34

gitlab显示excel gitlab看不到项目_github_35

 

 5、创建分支

gitlab显示excel gitlab看不到项目_gitlab显示excel_36

gitlab显示excel gitlab看不到项目_gitee_37

 

5.切换分支

gitlab显示excel gitlab看不到项目_git_38

 

6、合并分支 

合并分支有两种情况,一是master主分支没有做出修改其他分支做出修改,最后切换到master分支下合并分支会正常合并

二是master主分支和其他分支均做出修改,在最后合并时git会不知道用哪个,就产生了冲突。

这里我只演示一下冲突怎么来手动合并:

当两个分支在同一个文件的同一个地方都做改变了,和缤纷的时候会发生冲突,此时只能手动选择合并:

gitlab显示excel gitlab看不到项目_gitee_39

gitlab显示excel gitlab看不到项目_远程仓库_40

 

gitlab显示excel gitlab看不到项目_gitlab显示excel_41

 

 

 八、IDEA集成Gitee和Github

首先要安装Gitee和Github插件,前面也提到了,不然是用不了的哦

两个远程库操作基本上一样,这里以Gitee国内的为例

 8.1、添加Gitee账号

前提你得去Gitee官网注册个账号,Gitee官网

gitlab显示excel gitlab看不到项目_gitee_42

gitlab显示excel gitlab看不到项目_远程仓库_43

 

 

8.2、将本地代码push到码云远程仓库 


 去我们的Gitee上看看发现已经push成功了哦,在Gitee上的git-demo仓库中有了我们的代码

 8.3、将远程仓库代码pull到本地

如果我们的远程仓库修改了,而我们本地并没改变,我们此时就可以将远程库代码pull到本地

gitlab显示excel gitlab看不到项目_git_44

 

gitlab显示excel gitlab看不到项目_gitee_45

 

 8.5、码云复制Github项目

很简单

去Github上找到自己想要复制的项目地址并copy。https协议的地址即可

把地址在Gitee新建库的步骤中,导入的方式,刚复制的地址放进去,

gitlab显示excel gitlab看不到项目_gitlab显示excel_46

 如果Github上项目的代码有所更新,那么我们的Gitee上代码显然没有更新,这时候我们就要学会强制刷新Gitee项目代码

gitlab显示excel gitlab看不到项目_gitlab显示excel_47

之刷新网页是没用的 

8.6、 从远程仓库克隆项目

gitlab显示excel gitlab看不到项目_git_48

 

gitlab显示excel gitlab看不到项目_gitee_49

 

8.7、IDEA中的Git的log信息 

gitlab显示excel gitlab看不到项目_gitee_50

 可以查看具体的信息以及操作