欢迎关注【无量测试之道】公众号,回复【领取资源】,
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 --listdiff.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 +0800add 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自动化测试等,微信搜索公众号:“无量测试之道”,或扫描下方二维码:

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

Git 必知必会《上》相关推荐

  1. 数据科普:期权的希腊字母 | 上(投资必知必会)

    投资小课堂由开课啦???? 1.期权类型与到期盈亏 2.定价模型与平价关系式 3.期权价格和相关变量的关系 期权的希腊字母主要包括 Delta. Gamma. Theta.Vega 和 Rho,每个希 ...

  2. c2064 项不会计算为接受0个参数的函数_【JS必知必会】高阶函数详解与实战

    本文涵盖 前言 高级函数概念 函数作为参数的高阶函数 map filter reduce sort详解与实战 函数作为返回值的高阶函数 isType函数与add求和函数 如何自己创建高阶函数 前言 一 ...

  3. MySQL必知必会教程:深入理解MySQL技术内幕

    2019独角兽企业重金招聘Python工程师标准>>> MySQL必知必会教程:深入理解MySQL技术内幕 作为最流行的开源数据库软件之一,MySQL数据库软件已经是广为人知了.当前 ...

  4. mysql必知必会_《MySQL必知必会》学习小结

    关于SQL,之前通过sqlzoo的题目,完成了入门,也仅仅是入门而已. 最近都在忙着投简历和找新的数据分析项目做(为了练python和面试的时候有的聊),所以SQL放了一段时间没练.目前的工作用不到, ...

  5. php7.2 开启mcy扩展,phper必知必会(二)

    1.说说你对进程,线程以及协程的理解 进程:是系统进行资源分配和调度的基本单位,是基本操作系统结构的基础.进程是程序基本执行的实体.进程与进程之间是独立的,拥有完全独立的地址空间,进程的切换只发生在内 ...

  6. 脑残式网络编程入门(三):HTTP协议必知必会的一些知识

    为什么80%的码农都做不了架构师?>>>    本文原作者:"竹千代",原文由"玉刚说"写作平台提供写作赞助,原文版权归"玉刚说&q ...

  7. 【web必知必会】—— 图解HTTP(下)

    [web必知必会]-- 图解HTTP(下) 原文:[web必知必会]-- 图解HTTP(下) 上一篇<图解HTTP 上>总结了HTTP的报文格式,发送方式,以及HTTP的一些使用. 本文再 ...

  8. mysql正则表达式关键字_《MySQL必知必会》正则表达式

    <MySQL必知必会>正则表达式 正则表达式 1.1.关键字 REGEXP 正则表达式的使用需要用到关键字 REGEXP . select prod_name from products ...

  9. java的标量和聚合量_第5节:Java基础 - 必知必会(下)

    第5节:Java基础 - 必知必会(下) 本小节是Java基础篇章的第三小节,主要讲述Java中的Exception与Error,JIT编译器以及值传递与引用传递的知识点. 一.Java中的Excep ...

  10. tableau必知必会之VMware 搭建 Tableau Server for Linux 单机环境

    tableau10.5版本推出的 Linux 版 Tableau Server,让用户能够将 Tableau 的分析平台与 Linux 的企业级功能实现更好的结合,从而简化部署和管理工作. 很多用户陆 ...

最新文章

  1. centos yum 重新配置dns
  2. 各种卡的一些信息积累
  3. 【21.37%】【codeforces 579D】Or Game
  4. 对于linux下指令的进一步扩充与巩固
  5. 牛客题霸 [ 岛屿数量] C++题解/答案
  6. GitHub 创建项目
  7. Visual Studio 2012资源管理器里单击打开改为双击打开文件
  8. java分页代码思路,记录--java 分页 思路 (hibernate关键代码)
  9. 套接字I/O模型-重叠I/O
  10. Oracle dbms_random随机函数包
  11. excel vba 快速显示及隐藏所选数据行,并获取多重选择区地址的行列号
  12. thinkphp 多字段排序
  13. 小程序modal控件(显示为弹框) 可有输入框
  14. 1000道Python题库系列分享24(41个客观题,numpy专题)
  15. Maximum Submatrix Largest Rectangle
  16. eclipse项目的导入
  17. 快捷键Ctrl+s快速保存,屏蔽保存网页到本地
  18. 小程序 全屏滑动【亲测有效】
  19. 程序的动态加载和执行
  20. Java不停机上线_不停机发布策略

热门文章

  1. CMMI有哪几个级别,每个级别有哪些其特征
  2. 加解密,加签、验签也就这肥事
  3. java文档注释生产api没有注释_如何使用javadoc命令生成api文档,文档注释
  4. 老师怎么制作网上查分系统?
  5. 华为ensp---AC三层旁挂组网实验(参照华为官方手册)
  6. linux查看cpu核数命令,centos查看CPU以及核数命令
  7. java自带的发布订阅模式
  8. 使用CSS实现首行缩进效果
  9. 论文分享 | Yann LeCun 联合发布、工程师都在读的自监督学习论文
  10. Sms开源短信及消息转发器,不仅只转发短信,备用机必备神器