《游戏测试》git培训(上)

简介: 《游戏测试》git培训(上)

版本管理从早期的svn到现在的git,发生了不小的变化。作为测试不光要持续提高测试技能,也要持续提升其他方面的知识,都说测试是六边形战士,真的是一点都不假。一入测试深似海,下班已是夜三更。


一、知识科普

  • 2005年4月3日:Linus 开始开发 Git(Linux 的缔造者 Linus Torvalds
  • 2005年4月6日:Git 项目对外发布
  • 2005年4月7日:Git 实现作为自身的版本控制工具
  • 2005年4月18日:实现多分支合并
  • 2005年6月16日:Linux 内核 2.6.12 发布,Git 已经可以用于维护 Linux 核心源码
  • 2005年7月26日:Linus 功成身退,将 Git 的维护工作交给另一名 Git 的主要贡献者 Junio C Hamano


SVN 和 Git 的区别:SVN 是集中式的版本控制系统,而 Git 是分布式的。


集中式版本控制系统需要找一个服务器作为大本营,所有的代码都需要提交到服务器上进行统一的管理。当你需要对代码进行改动时,需要先从服务器上下载一份拷贝,修改完成之后,还需要上传回服务器。


在分布式版本控制系统中,大家都拥有一个完整的版本库,不需要联网也可以提交修改,所以中心服务器就显得不那么重要了。


二、理论基础

Git 记录的是什么?

如上,如果每个版本中有文件发生变动,Git 会将整个文件复制并保存起来。这种设计看似会多消耗更多的空间,但在分支管理时却是带来了很多的益处和便利。

git工作区域有三个,本地工作区Workspace,本地缓存区Index/Stage,远程服务器Remote。

本地工作区,相当于你电脑里的工作文件夹

本地缓存区,相当于隐藏在git工具里的一个隐藏文件夹,我们不可直接看到。这个也是和svn最大的区别。自己修改好的文件,确定要上传远程服务器的,要先提交到缓存区。

远程服务器,远程电脑里的文件夹,所有人推送上来的东西都会被存储在远程服务器上。


总的来说完整的git工作流程就是,每个人都在本地工作区工作,做好的工作提交到缓存区,然后选择推送,就可以把缓存区所有的东西推送到远程服务器。

关键点:记住所有自己修改的东西,一个个提交到缓存区,然后再推送到远程服务器,不是自己修改的东西,全部可以还原。

文件标识绿色和红色,安装了git的软件后,项目目录的文件夹以及子文件夹,以及文件都会有一个特殊的标识,分别是绿色的勾和红色的叹号。

例如

这两个标识的含义就是该目录下是否有文件被修改,绿色就是没有文件被修改,红色就是有文件被修改,文件上也会有类似的标识。注意:删除文件也是一种修改,所以可能你进去看到文件夹里看到的文件都是绿色,但是这个父文件夹却是红色,就是有个文件被你删除了!


分支:你可以理解成这个就是项目的镜像,是一个独立的世界,不同的分支里看到的世界是不一样的,所以克隆项目之后第一件事,就是切换到你需要的分支上。一个项目可以有很多的分支,分支之间可以通过合并的操作来完成分支之间的数据整合。这个可以用作项目管理的工具之一。

例如说:开发分支上进行工作,测试分支上进行测试工作,发布分支上进行打包工作,修复bug的分支进行bug修复工作,当bug修复完成并且通过了测试,代码就会合并回开发分支上。当然,git上有不同的工作流可以提供选择,就看我们项目的选择。


合并操作:合并操作就是把A分支的内容合并到B分支上,相当于把A分支上有,但是B分支上没有的东西移动到B分支上。这种内容的移动针对文本文件,可以自动合并完成,但是这种自动的合并并不能保证代码的正确性。合并操作也是冲突产生最频繁的操作!


冲突:冲突的意思就是一个文件不同的内容合并到了一起,例如说,同一行代码被不同的人修改之后,然后合并到了一起。或者美术或者策划的文件里有两个人修改了同一个文件,则必然会造成冲突,而且这种冲突没法通过文本文件的合并来解决,只能选择其中一份来解决冲突。因为不管是git和svn,能自动合并的都是文本文件。其他文件谈不上自动合并。


三、安装配置

安装包

1:Git-2.26.2-64-bit.exe  

2:TortoiseGit-2.8.0.0-64bit.msi

3:TortoiseGit-LanguagePack-2.8.0.0-64bit-zh_CN.msi

链接: https://pan.baidu.com/s/1mtwA_nEi4ObyAPq9_GsFVQ?pwd=5p38 提取码: 5p38

1为git主体软件,高手一般装这个也可以直接使用,命令行方式,效率最高!

2为git图形界面操作软件,是一个壳工具,前提是先安装git主体软件才能使用,适合小白使用。

3为2的中文语言包,装了之后可以把2的界面改成中文。

安装

1、默认配置完成以上三个软件的安装

2、切换语言git语言

3、还没有git账号的先到https://github.com/申请一个git账号,使用个人名字,不建议使用昵称!

4、生成ssh钥匙:

打开电脑,使用快捷键 win+R,输入cmd回车,在弹出的窗口里输入一下命令:ssh-keygen -o -t rsa -C "你的邮箱" -b 4096

例如:ssh-keygen -o -t rsa -C "biekefu@jktom.com" -b 4096  这个邮箱就是注册git的时候的输入的邮箱。然后回车,然后会提示选择保存的地方,直接回车,会保存到默认的地方,每个人不同,例如说,我的电脑就是C:\Users\biekefu\.ssh这个地址。然后接下来会要求输入两次密码,会是一种看不到的密码输入的形式,不用在意,直接输入两次密码,并且回车,直到提示生成成功就可以了。回到C:\Users\你的名字\.ss这个目录看看有没生成id-rsa和id_rsa.pub,把压缩目录里的这个文件,覆盖到C:\Users\你的名字\这个目录下,然后把IdentityFile这一行修改成IdentityFile ~/.ssh/id-rsa


5、git网页ssh key配置登陆http://192.168.10.1:8081/(这个是项目内部地址,由技术搭建git时创建,这里作为举例),然后在用户设置里,

把步骤4里生成的id_rsa.pub这个文件用记事本打开,并且把里面的文本拷贝出来,粘贴

  1. 这里,然后点击add key,完成公钥添加。

  2. 6、配置TortoiseGit,右击电脑空白的地方,选择TortoiseGit->setting,然后再git分页栏,输入自己的名字和邮箱,如下所示。
  3. 然后再network里配置好ssh client

  4. 然后环境配置就大功告成了!!!
相关文章
|
9月前
|
缓存 程序员 开发工具
《游戏测试》git培训(下)--项目实战 2
《游戏测试》git培训(下)--项目实战
|
9月前
|
缓存 开发工具 数据安全/隐私保护
《游戏测试》git培训(下)--项目实战 1
《游戏测试》git培训(下)--项目实战
|
21天前
|
缓存 数据可视化 网络安全
Git命令大全
Git命令大全
54 1
|
25天前
|
开发工具 git
Git教程:深入了解删除分支的命令
【4月更文挑战第3天】
43 0
Git教程:深入了解删除分支的命令
|
2月前
|
存储 Shell Linux
【Shell 命令集合 文件管理】Linux git命令使用教程
【Shell 命令集合 文件管理】Linux git命令使用教程
34 0
|
2月前
|
开发工具 git
git常用命令整理
git常用命令整理
13 0
|
1月前
|
开发工具 git 开发者
Git常用命令大全:让你轻松驾驭版本控制
Git命令速查:`git init`新建仓库,`git clone`克隆,`git add`入暂存区,`git commit -m`提交,`git status`查看状态,`git log`查看历史,`git branch`创建分支,`git checkout`切换,`git merge`合并,`git pull`拉取更新,`git push`推送,`git remote -v`查看远程,`git checkout --`撤销本地修改,`git reset HEAD`取消暂存,`git reset --hard`回退版本。掌握这些,提升代码管理效率!
20 0
|
3天前
|
Shell 网络安全 开发工具
GIT常用命令
GIT常用命令
|
10天前
|
存储 Linux 开发工具
Git 分布式版本控制系统基本概念和操作命令
Git 分布式版本控制系统基本概念和操作命令
27 0
|
11天前
|
算法 Java BI
云效产品使用报错问题之平台上导出的统计数据和 git 中使用命令导出的数据统计都对不上,如何解决
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。

相关实验场景

更多