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 --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.期权类型与到期盈亏 2.定价模型与平价关系式 3.期权价格和相关变量的关系 期权的希腊字母主要包括 Delta. Gamma. Theta.Vega 和 Rho,每个希 ...
- c2064 项不会计算为接受0个参数的函数_【JS必知必会】高阶函数详解与实战
本文涵盖 前言 高级函数概念 函数作为参数的高阶函数 map filter reduce sort详解与实战 函数作为返回值的高阶函数 isType函数与add求和函数 如何自己创建高阶函数 前言 一 ...
- MySQL必知必会教程:深入理解MySQL技术内幕
2019独角兽企业重金招聘Python工程师标准>>> MySQL必知必会教程:深入理解MySQL技术内幕 作为最流行的开源数据库软件之一,MySQL数据库软件已经是广为人知了.当前 ...
- mysql必知必会_《MySQL必知必会》学习小结
关于SQL,之前通过sqlzoo的题目,完成了入门,也仅仅是入门而已. 最近都在忙着投简历和找新的数据分析项目做(为了练python和面试的时候有的聊),所以SQL放了一段时间没练.目前的工作用不到, ...
- php7.2 开启mcy扩展,phper必知必会(二)
1.说说你对进程,线程以及协程的理解 进程:是系统进行资源分配和调度的基本单位,是基本操作系统结构的基础.进程是程序基本执行的实体.进程与进程之间是独立的,拥有完全独立的地址空间,进程的切换只发生在内 ...
- 脑残式网络编程入门(三):HTTP协议必知必会的一些知识
为什么80%的码农都做不了架构师?>>> 本文原作者:"竹千代",原文由"玉刚说"写作平台提供写作赞助,原文版权归"玉刚说&q ...
- 【web必知必会】—— 图解HTTP(下)
[web必知必会]-- 图解HTTP(下) 原文:[web必知必会]-- 图解HTTP(下) 上一篇<图解HTTP 上>总结了HTTP的报文格式,发送方式,以及HTTP的一些使用. 本文再 ...
- mysql正则表达式关键字_《MySQL必知必会》正则表达式
<MySQL必知必会>正则表达式 正则表达式 1.1.关键字 REGEXP 正则表达式的使用需要用到关键字 REGEXP . select prod_name from products ...
- java的标量和聚合量_第5节:Java基础 - 必知必会(下)
第5节:Java基础 - 必知必会(下) 本小节是Java基础篇章的第三小节,主要讲述Java中的Exception与Error,JIT编译器以及值传递与引用传递的知识点. 一.Java中的Excep ...
- tableau必知必会之VMware 搭建 Tableau Server for Linux 单机环境
tableau10.5版本推出的 Linux 版 Tableau Server,让用户能够将 Tableau 的分析平台与 Linux 的企业级功能实现更好的结合,从而简化部署和管理工作. 很多用户陆 ...
最新文章
- centos yum 重新配置dns
- 各种卡的一些信息积累
- 【21.37%】【codeforces 579D】Or Game
- 对于linux下指令的进一步扩充与巩固
- 牛客题霸 [ 岛屿数量] C++题解/答案
- GitHub 创建项目
- Visual Studio 2012资源管理器里单击打开改为双击打开文件
- java分页代码思路,记录--java 分页 思路 (hibernate关键代码)
- 套接字I/O模型-重叠I/O
- Oracle dbms_random随机函数包
- excel vba 快速显示及隐藏所选数据行,并获取多重选择区地址的行列号
- thinkphp 多字段排序
- 小程序modal控件(显示为弹框) 可有输入框
- 1000道Python题库系列分享24(41个客观题,numpy专题)
- Maximum Submatrix Largest Rectangle
- eclipse项目的导入
- 快捷键Ctrl+s快速保存,屏蔽保存网页到本地
- 小程序 全屏滑动【亲测有效】
- 程序的动态加载和执行
- Java不停机上线_不停机发布策略