测开不能只靠鸡汤,基础硬才是真的硬,欢迎收看【测试开发干货】我是作者-我去热饭 紧接上文,我们在服务器上下载并配置了gitlab-runner这个工具,并且在gitlab上项目的设置处看到亮起了绿灯...按照我们一开始的计划,我们想让它自动去我们服务器的代码项目根目录下去执行git pull来拿到最新代码。 问题2:我们要在哪去提前设置gitlab-runner要执行的命令?...(我的项目叫for_test,点开头的文件证明是隐藏文件) 在哪修改:既然在项目根目录,那我们可以本地修改然后git push上传,也可以在gitlab网页上在线创建和修改。...tags:sss 就是让我提前设置在服务器上注册时候的那个管家,我图里叫sss,前面教程叫wqrf1 大家注意。...所以我们在gitlab网页上,在线修改.gitlab-ci.yml 然后保存,也一样可以触发才对,这样我们调试就方便了~ 注意,当你用公司的产品时,尽量单弄个分支代码来不断调试这个gitlab-runner
zhangsan"git config --global user.email "zhangsan@exmple.com"git config --global --list获取密匙C:\Users{你的电脑用户名...}.ssh\id_rsa.pub若不存在 使用git命令ssh-keygen -t rsa -C "zhangsan@exmple.com"添加密匙到GitLab打开C:\Users{你的电脑用户名}....ssh\id_rsa.pub文件 复制进入gitlab并登录你的账号 setting -> ssh keys复制你的keys到输入框 随便取个标题即可拉取代码图片在电脑代码文件夹下使用git命令git
默认的 GitLab 的 Runner 在构建时不会去拉取 Git Submodules 仓库,将会提示 Skipping Git submodules setup 跳过初始化 Git Submodule...仓库 如官方文档 的描述,只需要加上以下代码在 .gitlab-ci.yml 文件即可 variables: GIT_SUBMODULE_STRATEGY: recursive # 拉取 Submodule...,注意不同的 job 是在完全空白的项目,不会用到上一个job编译的文件 variables: GIT_SUBMODULE_STRATEGY: recursive # 拉取 Submodule 内容...设置之后可以在 GitLab 的 Runner 构建时看到如下输出 Updating/initializing submodules recursively 也就是说将会自动拉取 submodules...如果你想持续阅读我的最新博客,请点击 RSS 订阅,推荐使用RSS Stalker订阅博客,或者前往 CSDN 关注我的主页 本作品采用 知识共享署名-非商业性使用-相同方式共享
PlaneWar简介 a game-PlaneWar,Written by Python 这是一个用Python写的打飞机游戏,类似当年的微信打飞机。下面有相关的截图。...其实代码也很简单,就是一些加载图片,游戏的逻辑处理,加载游戏音效。怎么个Python游戏用的核心库:pygame。以后打算用Java再写一个。里面的代码就不详细介绍了。...有兴趣的可以访问我的GitHub项目。不过需要安装Python环境,最好是Python3环境。 GitHub地址:见文末 初始界面: 初始界面 如上图:程序运行之后的界面。
随着市面上越来越多三方APP的出现,某些手机厂商也开始对这些APP进行了安装限制或者运行限制,或者三方APP自身的版本过低,无法被特定的系统版本所支持。...今天我将要模拟实现一个“由于APP自身版本过低、导致无法在当前的系统版本上运行”的功能效果。...实现思路如下: 要获得APP的目标运行版本,也要知道系统的编译版本 通过版本比较,在进入该APP时,给用户做出“不支持运行”的提示 用户确认提示后,直接退出该APP 关键点是 targetSdkVersion...} }) .create() .show(); } } 2、在AndroidManifest.xml...我们注意到程序中使用的是 getApplicationInfo().targetSdkVersion,说明这个变量是 ApplicationInfo.java 的成员变量,这个值是在安装APK的过程中、
📷 1、点击[Search or Jump to...] 📷 2、按<Enter>键 📷 3、点击[in:name visibility] 📷 4、按<En...
这是一件关于我参与Hackerone平台某漏洞邀请项目的事,在此我要感谢该项目发起公司,他们友善的态度、及时的漏洞修复和奖金发放效率,让所有存在的提交漏洞都能在7天之内有所处理解决,我个人非常荣幸能参与这样的漏洞众测项目...我是一个漏洞挖掘小白,现阶段来说,奖金并不是我参与漏洞众测项目的主要原因,目前我在Hackerone上发现的漏洞已达85个,声誉值也超过2600多分并呈快速上升趋势。...在Hackerone上,我有时一星期可收到4到5个邀请项目。...介绍 在与项目发起公司进行接触联系之后,在朋友@Geekboy的引荐下我顺利入围参与了该项目。最终,我成功发现了目标范围站点多个RCE漏洞、SQL注入漏洞以及账户劫持漏洞,成果还算不错。...从Javascript文件中发现漏洞 之前,我看过@zseano发布的如何从Javascript文件中挖掘漏洞的视频后,我就尝试着自行编写了一些从源码中提取目标服务端和其它有用信息的小工具。
因此,在创作者打开编辑器开始写作的时候,每一分一秒都可以说是黄金时间。 那么,现在我们来思考一个问题: "通过什么方法,可以让创作者在最短时间内,效率最大化输出文字内容呢?"。...当然,这个小哥可不只是打打嘴炮,简单说说而已,为此他也在 GitHub 上创建了一个项目:The Most Dangerous Writing App。...看到这里,相信你也跟我想的一样:有没有这么夸张啊。 因此我抱着试一试的心态打开了这个项目,体验了一下。 在进行了简单的初步体验后,我内心的真实感受是: 这样的写作方式也太 TM 刺激了吧!...但是,当后面真正开始进入状态的时候,创作效率也立即提升上来了,脑子也完全 Focus 在了内容创作上。 其实,当我们平时记录一些流水账或日常做笔记的时候,5 秒钟的思考时间已经足够。...这里比较重要的一点是,你能否在短时间内快速进入到写作状态。 此外,这个项目还可以通过设置创作时间和词汇数,来指定一个创作目标。只要你在指定目标内完成任务,创作的内容便不会被删除: ?
因此,在创作者打开编辑器开始写作的时候,每一分一秒都可以说是黄金时间。 那么,现在我们来思考一个问题: "通过什么方法,可以让创作者在最短时间内,效率最大化输出文字内容呢?"。...当然,这个小哥可不只是打打嘴炮,简单说说而已,为此他在 GitHub 上创建了一个项目:The Most Dangerous Writing App。...看到这里,相信你也跟我想的一样:有没有这么夸张啊。 因此我抱着试一试的心态打开了这个项目,体验了一下。 在进行了简单的初步体验后,我内心的真实感受是: 这样的写作方式也太 TM 刺激了吧!...但是,当后面真正开始进入状态的时候,创作效率也立即提升上来了,脑子也完全 Focus 在了内容创作上。 其实,当我们平时记录一些流水账或日常做笔记的时候,5 秒钟的思考时间已经足够。...这里比较重要的一点是,你能否在短时间内快速进入到写作状态。 此外,这个项目还可以通过设置创作时间和词汇数,来指定一个创作目标。只要你在指定目标内完成任务,创作的内容便不会被删除: ?
GitHub 上,这个富有灵魂的项目名吸引了众人的目光。项目诞生一周,便冲上了趋势榜榜首。 并且,不止名字被注入灵魂,生成的文字也有一股不可抗拒的力量。...然后,我先拉起了小女儿的手。 至于,狗屁不通文章生成器究竟是一个怎样的算法,萌老师在项目里写道: 鄙人才疏学浅并不会任何自然语言处理相关算法,而且目前比较偏爱简单有效的方式达到目的方式。...并且,为了让扩充废话的事业进一步发展壮大,这位同学小改了一下程序,减少了后继废话添加者的工作量。 ? ?...当然了,虽然萌老师在主页里写道,在这个项目里使用中文变量名只是因为懒得切英文输入法,但同学们似乎都觉得,中文变量名也是这个项目的灵魂之一。...还有的同学,选择了在艺术风格上精益求精。 比如用世界上最好的语言实现渲染图片功能。 ? 感觉就算学生会退会申请需要手写六千字,也完全不用怕了呢。 ?
本文只讲部署过程,你首先要保证你的程序能在IDE里跑起来; 先看看你的application.properties中设置的端口号与你服务器上tomcat的端口号是否一致 server.port=80 (...args: Array) { runApplication(*args) } SpringBootServletInitializer这个类负责让tomcat...(java项目依赖的库大部分都是jar包) 另外我还在我的gradle配置文件中增加了以下内容 apply plugin: "war" apply plugin: 'application' mainClassName...= 'com.ysl.jna.JnaApplicationKt' (目前我也不知道有没有真实起到作用) 打包的操作是在这里完成的 ?...之后你可以选择你要打包的形式(或者两种形式的包都打) ? 打包完成后,你会在你的项目子目录中找到打好的包 ? 然后把你想要的包上传到tomcat服务器上去就可以了
其实我也遇到过相同的情况,和面试官说如何通过搜索引擎解决这些坑的吧不太好,让面试官认为你只是一个API Caller,但是又没有什么值得一谈的项目难点 我的建议是,如果没有什么可以深聊的技术难点,不妨在日常开发过程中...,试着封装几个常用的组件,同时尝试分析项目的性能瓶颈,寻找一些优化的方案,同样也能让面试官对你有一个整体的了解 在这篇文章中,我会分享在我目前公司的项目里,是如何在满足业务需求的基础上,让整个系统焕然一新的过程...这里我从以下4个方面分享一下我在项目中是如何改善系统的性能,让系统"步履如飞"的 网络请求相关 构建相关 静态资源优化 编码相关 网络请求相关 这部分旨在实现需求的前提下尽量减少http请求的开销,或者减少响应时间...,如何尽可能的减少白屏对用户的影响,目前我选择的是在html模版中,注入一个loading动画,这里我拿D2-Admin中的loading动画举例 <!...源代码 部分优化的方案放在我的github上,有兴趣可以看看 源码地址 下篇在这里: 我是如何让公司后台管理系统焕然一新的(下)-封装组件 参考资料 vue-element-admin D2 Admin
1.新建一个git仓库 备注:可以在github建立,如果要建立私有的composer,可以自己搭建git仓库 2.初始化composer文件 执行composer init 参考:https://getcomposer.org.../packages/submit 5.查看提交composer包 https://packagist.org/packages/joyousphper/composer-demo 6.设置composer...自动更新 6.1打开https://github.com/JoyousPHPer/composer-demo/settings/installations添加一个Packagist服务 6.2https...://github.com/JoyousPHPer/composer-demo/settings/hooks设置hook,这里的apitoken可以从https://packagist.org/profile.../查看 7.项目引用 { "name": "joyousphper/demo1", "description": "composer demo", "type": "project
学JSP第三节课,今天老师上课讲了开启Tomcat之后,将自己电脑的文件放到指定的目录下,可以让同宿舍的人访问并且下载,老师只是提了一下,没有具体讲,后来我看了网上很多相关文章学习了一下。...主要分三步:1.查询本机IP地址->2.修改server.xml文件->3.放置文件到特定目录 1.查询本机ip地址 windows在Dos环境下输入"ipconfig",即可查到自己在局域网中的IP...地址,这里我的IP地址是100.83.154.181 ?...: IP地址有误 server.xml文件配置有误,检查一下两处修改的地方是否都修改了 你室友和你不在同一个局域网内 如果访问成功了,在你的webapps/ROOT这个文件夹里放想让其他人访问的东西,...比方说压缩包之类的,那么他就可以通过IP:端口号/文件名,举个例子,假设我的IP是123.12.12.6,Tomcat默认端口8080,我放了一个名叫test.rar的压缩包,那么正确的访问方式就是:123.12.12.6
BiaoChenXuYing 前言 本文讲解的是:做为前端开发人员,对服务器的了解还是小白的我,是如何一步步将 node+mongodb 项目部署在阿里云 centos 7.3 的服务器上,并进行性能优化...购买服务器与域名 服务器上安装所需环境(本项目是 node 和 mongodb ) 服务器上开放端口与设置规则 用 nginx、apache 或者tomcat 来提供HTTP服务或者设置代理 上传项目代码...刷新出现 404 问题,可以看下这篇文章 react,vue等部署单页面项目时,访问刷新出现404问题 3.5 上传项目代码,或者用码云、 gihub 来拉取你的代码到服务器上 我是创建了码云的账号来管理项目代码的...,因为码云上可以创建免费的私有仓库,我在本地把码上传到 Gitee.com 上,再进入服务器用 git 把代码拉取下来就可以了,非常方便。...基于 node + express + mongodb 的 blog-node 项目文档说明 4. 服务器小白的我,是如何将node+mongodb项目部署在服务器上并进行性能优化的
房地产公司每两到三年就会面临一个筹款周期,需要从业者把发展愿景跟具体计划结合起来,在未来十年左右,愿景和计划将共同推动项目从竞标到落地的整个过程。 父亲的职业对 Stewart 产生了不可思议的影响。...五、六个项目的起承转合陪伴他度过了懵懂的少年时光,他也由此学会了以商业思维看待世界,不再以纯本能式的朴素逻辑理解人和物。 计算机启蒙,但主修哲学 在 Stewart 看来,计算机这东西真的酷。...计算机屏幕上显示的东西不是电视那样的单向传播,使用者可以控制其中的对象,简直神奇!于是在 1979 还是 1980 年,Stewart 家里买了第一台 Apple II。...另外,学校的教室里也安装了一台电脑。 Stewart 曾买过一本叫 Byte 的杂志,这本杂志封底上总会刊登一些写好的程序。Stewart 最初的编程启蒙,就是在 Apple 上尝试运行这些程序。...这位联合创始人开始回顾自己的经历,整理在游戏运营中学到的重要知识。 在《Glitch》开发和运营期间,多个不同团队一直在持续参与项目工作。
我:“对实时性要求很高的 by id 查询也走 ES 吗?” 候选人有些慌:“这个。。。呵呵,我觉得都可以吧。” 我:“为什么 ES 叫近实时搜索引擎,请问‘近实时’三个字如何体现的?”...面试场景三: 我:“刚才你说的,你们系统线上环境的峰值 QPS 是 3000,那如果 QPS 再增加十倍,你打算如何优化?”...因为查询条件里面如果不将分库分表键带入的话,就只能将 MySQL 已分的全部库表全部查询一遍,才会获取全部数据结果。基本上在互联网或电商领域引入 ES,80% 都是为了解决这种场景的问题。...; 位置(Positon),单词在文档中分词的位置,用于语句搜索; 偏移(Offset),记录单词的的位置; 默认情况下,ES 的 JSON 文档中的每个字段,都有自己的倒排索引,这也其在复杂查询上优于...在每一个分片上查询符合要求的数据,并根据全局的 Term 和 Document 的频率信息计算相关性得分构建一个优先级队列存储查询结果(包含分页、排序,等等),把查询结果的 metadata 返回给查询节点
可参考之前写过的你的代码评审需要来一次清单革命! 代码评审是在小段的逻辑完整的代码片段上执行的,例如功能,任务,错误修复,改进等。 只有通过审核的代码才会发送到测试部门。...该项目的所有开发人员都会进行代码评审,无论他们的级别如何。 项目的所有开发人员都应该通过代码评审,无论他们的级别如何(初级开发人员也应该审查经验丰富的中高级专家的代码)。...接下来我们将介绍如何使用GitLab提供的工具来进行代码评审。 GitLab中的merge request指的是把代码从一个分支合并到另一个分支上做的操作。...参与有关修复的讨论。 (GitLab允许回复评论) 修复。 将更改推送到你的分支。 打开一个新合并如果最后一个MR被关闭(如果合并请求未关闭,它将自动更新,直到最后一次提交为止)。...因此,如果您是团队中唯一的开发人员,请为自己分配合并请求。 否则,请与另一位在项目中独立的开发人员交谈,并让他审查彼此的代码。
领取专属 10元无门槛券
手把手带您无忧上云