《游戏测试》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. 然后环境配置就大功告成了!!!
相关文章
|
缓存 程序员 开发工具
《游戏测试》git培训(下)--项目实战 2
《游戏测试》git培训(下)--项目实战
|
缓存 开发工具 数据安全/隐私保护
《游戏测试》git培训(下)--项目实战 1
《游戏测试》git培训(下)--项目实战
|
26天前
|
开发工具 git
git 常用命令
这些只是 Git 命令的一部分,Git 还有许多其他命令和选项,可根据具体需求进行深入学习和使用。熟练掌握这些命令能够帮助你更高效地管理代码版本和协作开发。
|
4月前
|
存储 开发工具 git
|
18天前
|
机器学习/深度学习 Shell 网络安全
【Git】Git 命令参考手册
Git 命令参考手册的扩展部分,包含了从基础操作到高级功能的全面讲解。
26 3
|
4月前
|
开发工具 git
【GIT 第二篇章】GIT常用命令
Git常用命令涵盖初始化、状态管理、提交、分支处理、远程操作等关键流程。`git init`启动本地仓库,`git clone`下载远程仓库。通过`git status`和`git diff`检查工作状态与差异。利用`git add`暂存文件,`git commit`保存更改。借助`git branch`、`git checkout`、`git merge`和`git rebase`管理分支。使用`git fetch`、`git pull`和`git push`同步远程仓库。通过`git reset`、`git revert`和`git checkout`实现版本回退。
74 0
|
1月前
|
缓存 Java Shell
[Git]入门及其常用命令
本文介绍了 Git 的基本概念和常用命令,包括配置、分支管理、日志查看、版本回退等。特别讲解了如何部分拉取代码、暂存代码、删除日志等特殊需求的操作。通过实例和图解,帮助读者更好地理解和使用 Git。文章强调了 Git 的细节和注意事项,适合初学者和有一定基础的开发者参考。
50 1
[Git]入门及其常用命令
|
2月前
|
开发工具 git
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
这篇文章是关于Git常用命令的总结,包括初始化配置、基本提交、分支操作、合并、压缩历史、推送和拉取远程仓库等操作的详细说明。
141 1
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
|
1月前
|
开发工具 git 开发者
|
1月前
|
开发工具 git 开发者
提升Git效率:掌握这5个高级命令
【10月更文挑战第17天】
62 0