【Git 学习一】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

自动化测试学习
了解git,gitee,github,gitlab之间的区别
git具体操作如何?


提示:以下是本篇文章正文内容,下面案例可供参考

一、了解git,gitee,github,gitlab之间的区别?

Git 是一种分布式版本控制系统,是一个命令,是一种工具,有点像cmd(命令行工具)。
Gitee 即码云,是 oschina 免费给企业用的,不用自己搭建环境,可以建立自己的私有仓库。在云端,国内。要借助Git.
Github 是一个基于git实现在线代码托管的仓库,共有仓库免费,建立私有仓库要收费。在云端,国外。要借助Git工具实现代码的下载和上传
Gitlab 类似 github,一般用于在企业内搭建git私服,要自己搭环境。
Git-ce 是社区版,gitlab-ee是企业版,收费的。

二、git具体操作如何?

1.本机基本操作

1、注册gitee账号
2、生成ssh公钥,实现免密登录
设置本机绑定ssh公钥,实现免密登录(码云是远程仓库,平时我们是本地仓库)
由于本地git仓库+gitee仓库之间传输是通过ssh加密的,所以需要配置ssh公钥。

在gitee设置ssh公钥
进入c盘【用户】-【自己的账户下】找到ssh目录,若没有,则进行创建mkdir ~/.ssh:

ssh-keygen -t rsa

在.ssh目录下,右击打开git.bash生成公钥,输入以上命令,enter3次完成。
在这里插入图片描述
在本地用户上的.ssh目录下会出现一个SSH公钥和私钥,一般我们设置公钥。
在这里插入图片描述
也可在.ssh的git.bash下ls看一下
接着在输一个查看公钥的命令cat id_rsa.pub
在这里插入图片描述
在这里插入图片描述
在返回gitee码云上面进行粘贴ssh公钥
在这里插入图片描述

2.代码命令操作

Git相关配置命令:

#查看gitconfig选项--系统级别,里面是各种配置文件,我们的用户名和邮箱都在这里
# 存在于git安装目录下Git/etc/gitconfig
== 打开对应的文件可以查看此配置文件。==
# 在用户对应的文件下c:\user\administrator(自定义)\.gitconfig 只适用于当前登录的用户配置 --global全局

# 第一次安装可能没有,我们需要先设置它
git config --global --list
# 可查看当前用户名和邮箱

git config --global user.name "yxl" # 名称
git config --global user.email 123455@qq.com # 邮箱(邮箱最好是真实的)

设置用户名和邮箱很有必要,是用户的标识,因为每次git提交都会使用该信息,他会被永远嵌入你的提交中。

  • 如果在一个项目中使用不同的名称和邮箱,可以在该项目中运行上述命令,且不要–global选项。*

三、Git基本理论(核心)

工作区域

三个区域:
1、工作目录(working directory):平时存放项目代码的地方。
2、暂存区(stage/index):临时存放你的改动,一个文件-保存即将提交到文件列表信息。
3、资源库、仓库区(repository):有你提交到所有版本的数据,HEAD指向最新放入仓库的版本。
4、一个远程的git仓库(remote directory):远程仓库(本地仓库),托管代码的服务器,简单说-你项目组中一台电脑用于远程数据交换。
在这里插入图片描述

工作流程

1、在工作目录中添加,修改文件
2、将需要进行版本管理的文件放入暂存区域
3、将暂存区的文件提交到git仓库
故:git管理的文件有三种状态:已修改(modified),已暂存(staged),已提交(committed)
在这里插入图片描述

Git项目搭建

  • 创建工作目录与常用指令
    工作目录(workspace)一般是你希望git帮助你管理的文件夹,可以是你项目的目录,也可以是一个空目录,建议不用中文
    在这里插入图片描述
    这六个命令很重要
    创建本地仓库方法有两种:一种是创建全新仓库,一种是克隆远程仓库
    1、创建全新仓库,需要在Git管理的项目的根目录执行:
在当前目录下新建一个Git代码库
git init 

2、执行后,仅仅在项目目录中多出一个.git目录,关于版本等的所有信息都在这个目录里面

  • 克隆远程仓库
    1、另一种方式是克隆远程目录,由于是将远程服务器上的仓库完全镜像一份到本地
#克隆一个项目和他的整个代码历史(版本信息)
$ git clone [url] 如(git@gitee.com:prodify/gitstudy.gitt)

在这里插入图片描述

在这里插入图片描述
本地则出现整个代码库。

Git 文件操作

  • 文件四种状态
    版本控制就是对文件的版本控制,要对文件进行修改,提交等操作,首先要知道文件当前是什么状态,不然可能会提交了现在还不想提交的文件,或者要提交的文件没提交上。
    1、untracked:未跟踪,此文件在文件夹中,没有加入git库,不参与版本控制,通过git add状态变为staged
    2、unmodify:文件已经入库,没修改,若修改则变为modified,如果使用git rm移出版本库,则成为untracked文件
    3、modified:文件仅仅是修改,有两个去处,第一通过git add可进入暂存staged状态,使用git checked则丢弃修改过,返回到unmodify状态,这个git checked即从库中取出文件,覆盖当前修改。
    4、staged:暂存状态,执行git commit 则将修改同步到库中,这时库中文件和本地文件又变为一致,文件为unmodify状态,执行git reset HEAD filename取消暂存,文件状态为modified
  • 查看文件状态
    上面的4种状态,通过如下命令可查看文件的状态
# 查看指定文件状态
git status [filename]
# 查看所有文件状态
git status
# git add .    #添加所有文件到暂存区
# git commit -m "注释内容的提交信息" # 提交暂存区中的内容到本地仓库 -m 提交信息

在这里插入图片描述

  • 忽略文件
    有些时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等。
    在主目录下建立".gitignore"文件,此文件有如下规则:
    1、忽略文件中的空行或#开始的行将会被忽略。
    2、可以使用linux通配符。如(*)代表任意多个字符,(?)代表一个字符,([a,b,c])代表可选字符范围,({string1,string2,…})代表可选的字符串等
    3、如果名称最前面有一个感叹号(!),表示例外规则,不能被忽略
    4、如果名称最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中文件不忽略
    5、如果名称最后面是一个路径分隔符(/),表示要忽略的文件在此目录下该名称的子目录,而非文件(默认文件或目录都忽略)
# 注释
*.txt   # 忽略所有.txt结尾的文件
!lib.txt  # 除lib.txt不忽略
/temp  # 仅忽略项目根目录下的todo文件,不包括目录temp
build/  # 忽略build/目录下所有的文件

IDEA中集成Git

1、新建项目,绑定git

将远程git文件拷贝到项目中即可

2、修改文件,使用IDEA操作git

3、提交测试

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值