欢迎关注【无量测试之道】公众号,回复【领取资源】,
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自动化测试等,微信搜索公众号:“无量测试之道”,或扫描下方二维码:
添加关注,让我们一起共同成长!