Git 必知必会《上》

欢迎关注【无量测试之道】公众号,回复【领取资源】,
Python编程学习资源干货、
Python+Appium框架APP的UI自动化、
Python+Selenium框架Web的UI自动化、
Python+Unittest框架API自动化、

资源和代码 免费送啦~
文章下方有公众号二维码,可直接微信扫一扫关注即可。

1、什么是Git

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

 

2、如何安装 

本文以windows 平台安装为示例进行讲解,安装包下载地址:https://gitforwindows.org/ ,下载下来后是一个exe可执行包,详细的安装过程这里不演示。

 

3、 如何使用

命令之一:git config

git config 命令用来配置git的配置文件,git配置级别主要有以下3类:

1.仓库级别 local 【优先级最高】git config --local -l 查看仓库配置

2.用户级别 global【优先级次之】git config --global -l 查看用户配置

3.系统级别 system【优先级最低】git config --system -l 查看系统配置

git config --global user.email test@126.com #增加一个配置项

git config [--local|--global|--system] --get section.key(默认是获取local配置中内容) #获取一个配置项

git config [--local|--global|--system] --unset section.key #删除一个配置项

$ git config --list

diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
http.sslbackend=openssl
http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
core.autocrlf=true
core.fscache=true
core.symlinks=false
pull.rebase=false
credential.helper=manager

命令之二:git clone


$ mkdir zentao_project #创建项目目录
$ cd zentao_project #进入项目目录
$ ssh-keygen.exe # 生成公钥
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/tdcengineer/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/tdcengineer/.ssh/id_rsa
Your public key has been saved in /c/Users/tdcengineer/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:7vf10KJ+xduQgviN23fUSFtcjn2nGfXC/BGolWzTVpE tdcengineer@DESKTOP-U4OR066
The key’s randomart image is:
+—-[RSA 3072]——+
| . +.=|
| B Eo|
| +oo+|
| . B.O|
| S. . . %=|
| .. . . B.|
| .. o .+++|
| . +..oo=o|
| …+=o ..|
+——[SHA256]——-+

$$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDSGnLxdJ88zyQFH/gXH7EwtoM5JxEMhoU5F9bZqTBxdoyZnjLZUGzzVydzD0GBcneOgyi/E9WrdnHe/lcqK+/WiWSUga3UVlNa5MSJyzsasMKhswelRdwGNtPPogg87F2nnRf5DDyaNqTgWzwGjTqDMXE9JPmqqdnEfiBl/nwPikhIEbCXniwN2P9u4mP8MajQRAUu8FE7UsiG+t/NrD5Y2MGUYyuDXkzffq5x6cR+8ZANFBIJXmKVmZzjAcdYSNbn+O8HEJdiCKZgPn7rUHn2K11P+ts1caUZKnTDnIOiISm1bi7YzYjF8RB+OhufJ2TGHrBVWPgNChZFdcniT/IaMzo2YsCDOAluBs51TokQoszC+f1x2qEP/T5F/cd8zeVi/HHDWkHWp1aVJF0QixL3Q2YMzzG6TlECybA9jgLcBJksdz/QAto5RRdGqqPV/zoOwHt24ng93CDJlzkEuatbcQDMN9j9xu0WUxgIB/y7smlAOAiYlgefL9BUKxPFcWE= tdcengineer@DESKTOP-U4OR066

将此公钥粘贴到git平台的—》user setting —》ssh keys —》key 这个文本框架,再输入title —》点击 【Add key】即可
$ git clone git@gitlab.test.com:cm/zentaopms.git
Cloning into ‘zentaopms’…
remote: Enumerating objects: 338, done.
remote: Counting objects: 100% (338/338), done.
remote: Compressing objects: 100% (162/162), done.
remote: Total 5506 (delta 183), reused 299 (delta 151)
Receiving objects: 100% (5506/5506), 6.96 MiB | 1.22 MiB/s, done.
Resolving deltas: 100% (2315/2315), done.
Updating files: 100% (2674/2674), done.
clone 项目成功。

命令之三:git add


此命令是将项目中未被跟踪的文件都加入到仓库中,它不提交这些文件,而只是让git开始关注他们
$ mkdir wl #在导入的工程目录下创建一个目录
$ cd wl #进入到创建的目录
$ cp /d/BaiduNetdiskDownload/ows-project/wechat/getemailss.py . #copy一个py文件到此目录下

命令之四:git status

查看项目的状态时候,输出的都是我们位于分支master上,接下里的输出表明项目在特定时间的快照。
$ git status
On branch master
Your branch is up to date with 'origin/master'.
nothing to commit, working tree clean
操作完成命令二后,再来看看git status 有什么不同:
$ git status
On branch master
Your branch is up to date with 'origin/master'.
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
new file: getemailss.py  #这里检查到项目有新增py文件

命令之五:git commit

我们在执行 git commit -m “add a python file” 的时候会拍摄项目的快照以记录代码库中所做的任何修改。git commit命令-m后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的说明本次提交的内容的说明,这样你就能从历史记录里方便地找到改动记录。


$ git commit -m “add a python file”
[master cf7d8c4] add a python file
1 file changed, 175 insertions(+)
create mode 100644 module/wl/getemailss.py

命令之六:git log

我们需要查看提交历史,就可以使用 git log 命令查看

$ git log
commit ed599a2e597e3224665ef81822021e7c0ea4a0d1 (HEAD -> master, origin/master, origin/HEAD)
Author: test.yan <jiaqiang.yan@wormpex.com>
Date: Wed May 27 17:36:31 2020 +0800


执行了命令五后我们再来看看git log 的输出是什么:
$ git log
commit cf7d8c46861f2291a859b10a2a939bbac9229eea (HEAD -> master)
Author: testaaa<liang.wu@shangri-la.com>
Date: Sun Aug 2 10:49:57 2020 +0800

add a python file  #这个就是刚才的-m 后面的内容

commit ed599a2e597e3224665ef81822021e7c0ea4a0d1 (origin/master, origin/HEAD)
Author: test.yan <jiaqiang.yan@wormpex.com>
Date: Wed May 27 17:36:31 2020 +0800

备注:我的个人公众号已正式开通,致力于测试技术的分享,包含:大数据测试、功能测试,测试开发,API接口自动化、测试运维、UI自动化测试等,微信搜索公众号:“无量测试之道”,或扫描下方二维码:

 添加关注,让我们一起共同成长!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wu_Candy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值