攻城狮周刊(第 2 期):AI 与平台工程的深度融合,重塑开发者未来2026-01-09·3511 字·8 分钟沈显鹏Weekly这里记录每周值得分享的 DevOps 与 AI 技术内容,周五发布。本杂志开源,欢迎投稿。
攻城狮周刊(第 1 期):AI 工程化与 DevOps 韧性:2026 年技术发展双主线2026-01-01·2696 字·6 分钟沈显鹏Weekly这里记录每周值得分享的 DevOps 与 AI 技术内容,周五发布。本杂志开源,欢迎投稿。
GitHub AI 名词全解析:Copilot、Agents、Models 到 MCP,到底谁是谁?2025-12-26·2605 字·6 分钟沈显鹏AI GitHub本文通过基于事实的解释和比喻,详细解读了 GitHub 上的 AI 相关概念及其层级关系,帮助读者理清 Models、Agents、Spaces、Spark 等术语的含义和作用。
Backstage(开发者门户)是什么?它能解决什么,又解决不了什么2025-12-14·1972 字·4 分钟沈显鹏BackstageBackstage 是什么?它为什么在平台工程领域变得如此重要?分享一些对 Backstage 的认识和判断。
一文看懂 DevOps:Packer、Terraform、Docker、K8s 原来是这样分工的!2025-12-10·1555 字·4 分钟沈显鹏DevOps在 DevOps 世界里,工具一多,很多人都会混淆它们的职责。用汽车产业链类比,帮你一次性理解 Packer、Terraform、Ansible、Docker、Kubernetes 的定位和协作方式。
py-eol:你可能一直在用“过期 Python”,只是没发现2025-12-04·764 字·2 分钟沈显鹏Pythonpy-eol 是一个轻量的小工具,帮助你快速判断某个 Python 版本是否已过期或即将 EOL,适合本地使用,也能集成到 CI/CD 中,让项目在版本管理上更可靠。
为了让大家少敲两行命令,我把 gnuplot 封成了一个开箱即用的 Python 包2025-12-01·1413 字·3 分钟沈显鹏Gitstats Gnuplot作为一个开源项目维护者,我深知“安装依赖”的痛苦。为了让用户少敲两行命令,我花时间把 gnuplot 封装成了一个开箱即用的 Python 包——gnuplot-wheel。本文分享了这个小轮子的诞生故事和实用价值。
软件开发真相:加两个人,并不会让项目快三倍2025-11-30·401 字·1 分钟沈显鹏Software在软件开发中,布鲁克斯法则指出“向一个已经延期的软件项目增加人力,只会使它更加延期。”本文通过烤鸡和孕妇的比喻,深入探讨了这一现象背后的原因,并提供了实用的解决方案。
受够了 Jenkinsfile 提交后才报错?试试这个预检查工具!2025-11-27·970 字·2 分钟沈显鹏Jenkins DevOpsJenkinsfile 本地检查神器,利用 API 校验,完美支持 pre-commit。
如何激活 InstallShield 许可证2025-11-20·671 字·2 分钟沈显鹏InstallShield本文介绍了如何激活 InstallShield 许可证的步骤和注意事项,帮助用户顺利完成软件安装和使用。
开源维护者最讨厌的一句话"Any updates?",你说过吗?2025-10-21·1090 字·3 分钟沈显鹏Open Source在开源项目的 issue 里,你是否也曾留言“Any updates?”(有什么更新吗?)来询问进展?看似无害的一句话,实际上却可能让维护者感到烦躁和挫败。本文分享了一篇关于这个话题的文章,并提出了更友善的替代做法。
兜兜转转,我发现 GitHub Copilot 才是最香的2025-10-21·1030 字·3 分钟沈显鹏AI经过一段时间的对比和尝试,我还是回到了 GitHub Copilot。本文分享我为何认为它是 2025 年最值得订阅的 AI 编程助手,以及实际使用体验。
Commit Check v2.0.0 重磅发布:支持 TOML 配置、简化 CLI & Hooks、重构验证引擎!2025-10-13·1010 字·3 分钟沈显鹏Commit-Check DevOps经过了断断续续一个月的开发和测试,我终于完成了这次重大更新。这也是 Commit Check 迎来了自诞生以来最大的一次更新。
Jenkins Explain Error 插件现已支持 Ollama!🤖2025-10-01·713 字·2 分钟沈显鹏Jenkins AI本文介绍了 Jenkins Explain Error Plugin 的新功能,即支持 Ollama 本地模型,帮助用户更高效地分析和解决构建错误。
连微软、NASA 都在用的 C/C++ 工具,终于有了官网!2025-09-30·817 字·2 分钟沈显鹏Cpp-Lintercpp-linter 相关的项目和工具官网上线了,地址是 https://cpp-linter.github.io/,欢迎大家访问和使用。
白嫖了这么多年,开源基础设施要开始收费了?2025-09-24·923 字·2 分钟沈显鹏Open Source开源基础设施并非免费,自来水般的 pip/npm 安装背后是高昂的带宽、存储和运维成本。声明呼吁开发者与企业共同分担,优化工具、支持赞助,才能让我们习以为常的“免费”体验真正可持续。
Conventional Branch 规范一周年:从 0 到全球开发者的选择2025-09-16·563 字·2 分钟沈显鹏Git Conventional Branch12K+ 访问量、多语言翻译、全球开发者采用,Conventional Branch 规范的一周年之路
博客双语发布不再麻烦:GitHub Actions + Gemini API 实践2025-08-24·760 字·2 分钟沈显鹏GitHub Actions Gemini API发现我的博客英文读者比中文还多?于是我用 GitHub Actions + Gemini API,把文章自动翻译成英文,省心又高效。
做开源四年,我得到了 3 个意想不到的收获2025-08-22·1142 字·3 分钟沈显鹏Open Source Career Development Technical Growth有人说开源没用,既赚不到钱,又浪费时间。但我在四年的坚持中,发现了 3 个意想不到的收获:让工作被真正看到、接触更优秀的人和项目、以及一份长期的价值积累。这些收获,其实每个开发者都能借鉴。
你的团队 DevOps 到底“几分熟”?这个开源工具告诉你2025-08-17·932 字·2 分钟沈显鹏DevOps如何评估并提升团队的 DevOps 实践水平?我正式发布了开源项目 DevOps Maturity —— 提供评估工具与实践指南。基于业界模型 + 开源工具,几分钟即可快速测出团队的 DevOps 成熟度。
被 Airflow Maintainer 一顿夸:Rust 重写版 pre-commit 项目 prek 的崛起2025-08-13·1242 字·3 分钟沈显鹏Python Pre-Commit昨天在网上冲浪,突然看到了一个仓库叫 prek,一看介绍是 —— ⚡ Better pre-commit, re-engineered in Rust。这就引起了我的兴趣,毕竟 pre-commit 作为非常广泛的预提交的工具,如果能改进,尤其是性能方面的改进,肯定是好事。
八年之后,我终于翻新了我的博客2025-08-10·935 字·2 分钟沈显鹏Blog Hugo Blowfish本文记录了我在八年后对博客进行翻新的过程,从 Hexo 到 Hugo 的迁移,以及新博客的功能和设计改进。
Jenkins Explain Error Plugin 支持 Google Gemini 了!🤖2025-08-03·528 字·2 分钟沈显鹏Jenkins AI本文介绍了 Jenkins Explain Error Plugin 的新功能,支持 Google Gemini 模型进行错误分析,并提供了配置方法和示例视频。
Jenkins 插件中心居然还没有 AI 插件?我写了一个!🤖2025-07-29·1402 字·3 分钟沈显鹏Jenkins AI介绍我开发的第一个 Jenkins 插件:Explain Error Plugin。它可以自动解析构建失败的日志信息,并生成可读性强的错误解释,帮助开发者更快地定位和解决问题。
🧊2025软件供应链现状报告:开源时代,我们究竟在和谁打交道?2025-06-28·1833 字·4 分钟沈显鹏JFrog DevOpsJFrog发布的《2025软件供应链现状报告》揭示了软件供应链的变化和风险,尤其是AI模型的安全问题。本文分享了报告中的关键发现和对DevOps从业者的启示。
如何修复 Shields.io 徽章在 Jenkins 中无法显示2025-06-23·423 字·1 分钟沈显鹏Jenkins如果你的 Shields.io 徽章(例如构建状态或文档状态)在 Jenkins 仪表盘中无法显示,很可能是因为 Jenkins 的严格内容安全策略(CSP)限制所致。本文将演示如何通过 Script Console 临时修复,以及如何通过修改 Jenkins 启动参数永久解决。该方法适用于内部 Jenkins 环境,并已在现代 Jenkins 安装中测试验证。
提升代码可追溯性:一招把 PR 描述写入 Git commit2025-06-12·878 字·2 分钟沈显鹏Git Bitbucket在 Bitbucket 中使用 Commit Message Templates 功能,将 PR 描述自动写入 Git commit message,确保关键信息不会随工具变更而丢失。
如何优雅地控制 Jenkins 构建是否中断?只看这篇2025-06-05·1033 字·3 分钟沈显鹏Jenkins DevOps在 Jenkins 中,disableConcurrentBuilds 选项用于管理并发构建。本文介绍了如何根据分支类型动态设置 abortPrevious 的值,从而实现更灵活的构建管理。
CI/CD 不是一次性的项目,而是一个不断演进的系统2025-06-02·989 字·2 分钟沈显鹏CI/CD DevOps在 DevOps 中,CI/CD 流水线需要持续维护和重构。本文探讨了为什么 CI/CD 不是一次性的建设项目,而是一个需要长期投入和持续演进的系统。
asdf-clang-tools:使用 asdf 安装 Clang 工具的新选择2025-05-29·1234 字·3 分钟沈显鹏Clang-Tools Asdfasdf-clang-tools 是一个 asdf 插件,用于安装和管理 Clang Tools 相关工具(如 clang-format、clang-tidy、clang-query 和 clang-apply-replacements 等)。
ChatGPT 一开,谁还去“努力”?2025-05-26·784 字·2 分钟沈显鹏AIAI 的出现让很多人感到“虚”,但它不会取代我们的职位,而是改变我们的做事方式。本文分享了对 AI 的体会和每天一小步的坚持。
还在用 Wiki/Confluence?你可能在生产垃圾2025-05-14·1041 字·3 分钟沈显鹏Wiki Confluence Documentation在企业中,Wiki 和 Confluence 等文档工具如果缺乏统一管理和审核机制,可能会导致信息混乱和知识沉淀失败。本文探讨了如何避免这种情况,并借鉴开源社区的成功经验。
还在用 pip 和 venv?那你可真落伍了,赶紧体验 uv!2025-05-05·1077 字·3 分钟沈显鹏Uv Pipuv 是一个由 Astral 团队开发的 Python 包管理工具,它能替代 pip、venv、pip-tools 的功能,提供更快的依赖解析速度和更现代的项目管理方式。
微软、NASA 都在用?我用业余时间维护了 4 年的项目破百了2025-04-15·594 字·2 分钟沈显鹏Clang-Format Clang-Tidy Clang Cpp-Lintercpp-linter-action 是一个 GitHub Action,提供 C/C++ 代码的格式化和静态分析功能。它使用 clang-format 和 clang-tidy,支持多种配置和自定义规则。项目自 2021 年创建以来,已被多个知名组织和开源项目使用。
从零配置 Sphinx + ReadTheDocs:快速部署自动化文档2025-04-12·936 字·2 分钟沈显鹏Sphinx ReadTheDocs RST在开源项目或团队协作中,Sphinx + ReadTheDocs 是一个易于维护、可自动部署的文档系统。本文记录了配置过程和注意事项。
Markdown 不香了吗?为什么越来越多 Python 项目用 RST?2025-04-11·1039 字·3 分钟沈显鹏Markdown RSTMarkdown 和 reStructuredText(RST)是两种常用的标记语言。本文对比了它们的优缺点,并分享了在不同场景下的使用建议。
一觉醒来,我的 PR 已经被 Merge 到 CPython 主分支了!2025-02-27·685 字·2 分钟沈显鹏CPython在 CPython 的 Issue 区找到一个合适的 PR,修改代码、测试、提交 Pull Request,第二天醒来发现已经被 Merge 到主分支了!这是一个很好的学习过程,也是对开源社区的贡献。
复活 GitStats:让 Git 历史分析焕发新活力2024-11-28·979 字·2 分钟沈显鹏Gitstats介绍 GitStats 项目的复活过程,包括迁移到 Python 3、创建现代化流水线、发布到 PyPI 和 Docker,以及未来的改进计划。
PowerShell 不是内部或外部命令2024-11-18·225 字·1 分钟沈显鹏Ansible介绍在 Windows Server 2022 上执行 Ansible playbook 时出现 PowerShell 无法识别的问题原因及解决方法。
从早到晚,我的 DevOps 一天2024-10-27·924 字·2 分钟沈显鹏DevOps本文介绍了作为 DevOps 工程师的日常工作节奏,从早上到晚上,涵盖工作准备、会议、代码管理、构建发布等环节。
从 Jenkins 升级,我做了哪些优化2024-10-24·949 字·2 分钟沈显鹏Jenkins DevOps本文介绍了在升级 Jenkins 的过程中所做的优化,包括使用 Docker Compose 部署、重构 Jenkins Shared Library、引入 Windows Docker Container 等,以提升 CI/CD 流程的效率和安全性。
DevOps进阶:揭秘首席DevOps工程师的职责与技能2024-09-26·1314 字·3 分钟沈显鹏DevOps本文介绍了首席DevOps工程师的职责、核心技能和对公司的价值,帮助你了解如何在DevOps领域实现职业发展。
约定式分支规范中文版正式发布!2024-09-24·1373 字·3 分钟沈显鹏Conventional Branch Git本文介绍了约定式分支规范的中文版,旨在通过结构化的命名约定提高 Git 分支的可读性和可操作性。
初步了解 PyPA(Python Packaging Authority)下的知名项目和关系2024-09-05·1391 字·3 分钟沈显鹏Python本文介绍了 PyPA(Python Packaging Authority)下的知名项目,包括 pip、setuptools、wheel 等,并分析了它们之间的关系,帮助读者更好地理解 Python 包管理和分发的生态系统。
从 XLC 10.1 升级到 IBM Open XL C/C++ for AIX 17.1.0 的问题与解决方案2023-10-08·392 字·1 分钟沈显鹏AIX Clang XLC本文记录了从 IBM XLC 10.1 升级到 XLC 17.1(IBM Open XL C/C++ for AIX 17.1.0)过程中遇到的问题及解决方法,共涵盖 12 个错误的修复方案。
解决通过 Jenkins Artifactory plugin 上传 artifacts 失败的问题 “unable to find valid certification path to requested target”2023-09-11·568 字·2 分钟沈显鹏Artifactory Java Jenkins本文介绍了如何解决 Jenkins agent 上传 artifacts 到 Artifactory 时遇到的 SSL 证书验证问题,包括生成安全认证文件和导入到 Java 的 cacerts 中。
Docker Buildx Bake 加速构建和管理多平台镜像的利器2023-07-17·1624 字·4 分钟沈显鹏Docker本文介绍 Docker Buildx Bake 的概念、优势、使用场景以及如何使用该功能来加速构建和管理多平台镜像。
详解SBOM:定义、关系、区别、最佳实践和生成工具2023-06-10·2634 字·6 分钟沈显鹏SBOM SLSA本文介绍了SBOM的定义、与SLSA和Black Duck的关系和区别、最佳实践以及可用的生成工具,帮助读者更好地理解和应用SBOM。
为什么我的 Jenkins Controller 越来越慢?可能犯了这些错误...2023-02-06·3163 字·7 分钟沈显鹏Jenkins本文介绍了 Jenkins pipeline 的一些最佳实践,旨在帮助开发者和运维人员优化 Jenkins 的性能和可维护性。
在 Jenkins 上用了这么久的 Groovy,是时候认识一下它了2022-03-06·1673 字·4 分钟沈显鹏Groovy Jenkins JavaGroovy 是一种强大的动态语言,适用于 Java 平台,本文介绍了 Groovy 的特性、与 Java 的区别以及在 Jenkins 中的应用场景。
Vagrant 和 Docker 的区别,该如何选?2022-02-14·665 字·2 分钟沈显鹏Docker VirtualBox Vagrant本文介绍了 Vagrant 和 Docker 的区别,分析了它们各自的使用场景和优势,帮助读者选择合适的工具来管理虚拟机或容器。
什么是 Go ?Go 的优势和现状。初学者应该学习 Python 还是 Go?2022-01-18·1811 字·4 分钟沈显鹏Go本文介绍了 Go 语言的基本概念、优势、排名以及初学者应该如何选择学习 Python 还是 Go,提供了实用的学习建议和资源。
你一定要了解这 17 条 Docker 最佳实践!2022-01-12·8494 字·17 分钟沈显鹏Dokerfile Docker本文分享了在编写 Dockerfiles 和使用 Docker 时应遵循的一些最佳实践,包括多阶段构建、镜像优化、安全性等方面的建议。
2022年序员如何选择显示器?1080p还是2K? 单屏还是多屏?2021-12-21·1137 字·3 分钟沈显鹏Monitor本文分享了个人在选择显示器时的经验和建议,包括不同尺寸、分辨率和屏幕组合的优缺点,以及如何根据工作需求选择最合适的显示器。
组织内如何评估 CI/CD 成熟度2021-12-07·1621 字·4 分钟沈显鹏CI/CD Badge本文介绍了如何使用 Jenkins 的 generic-webhook-trigger 插件来实时获取 Bitbucket 仓库的事件信息,如 Pull Request ID 等。
GitHub Actions 还能这么玩?自动将发布的博客文章更新到 GitHub 个人主页2021-11-09·1210 字·3 分钟沈显鹏Actions GitHub本文介绍了如何使用 GitHub Actions 自动将发布的博客文章更新到 GitHub 个人主页,提升个人主页的动态性和可读性。
2021-22 世界质量报告(World Quality Report)2021-11-06·3169 字·7 分钟沈显鹏Report Quality本文介绍了 2021-22 世界质量报告(WQR)的主要发现和趋势,强调了新冠疫情对软件质量和测试的影响,以及 QA 在敏捷和 DevOps 中的重要作用。
Polaris - 静态代码分析2021-10-24·1421 字·3 分钟沈显鹏Polaris Static Coverity Security这篇文章介绍了 Polaris 的基本概念、支持的编程语言、SaaS 平台的使用方法,以及如何配置和运行 Polaris 进行静态代码分析。它还提供了示例 YAML 配置文件和分析结果的查看方式。
SonarQube Community Edition 如何集成到项目中2021-09-18·312 字·1 分钟沈显鹏SonarQube Gradle本文介绍如何将 SonarQube Community Edition 集成到 Maven、Gradle 及其他类型项目中,包括必要的配置和 Jenkins 流水线示例。
运行 lcov 报错 "Can't locate JSON/PP.pm in @INC ..."2021-09-07·360 字·1 分钟沈显鹏Lcov Perl本文介绍在运行 lcov 生成代码覆盖率报告时遇到 “Can’t locate JSON/PP.pm in @INC …” 等 Perl 模块缺失错误的解决方法,包括安装缺失的 Perl 模块。
使用 Gcov 和 LCOV 做 C/C++ 项目的代码覆盖率2021-08-17·1969 字·4 分钟沈显鹏Gcov Lcov Coverage本文介绍了如何使用 Gcov 和 LCOV 对 C/C++ 项目进行代码覆盖率的度量,包括编译、运行和生成报告的步骤。
SonarQube 安装与常见问题排查2021-08-05·714 字·2 分钟沈显鹏SonarQube LDAP PostgreSQL本文记录了 SonarQube 的安装步骤,包括 LDAP 配置与 PostgreSQL 数据库设置,并附带一些常见问题的排查方法。
修复 "hidden symbol `__gcov_init' in ../libgcov.a(_gcov.o) is referenced by DSO" 错误2021-07-27·362 字·1 分钟沈显鹏Gcov Coverage DevOps本文介绍在使用 Gcov 编译项目进行代码覆盖率统计时,出现 “hidden symbol `__gcov_init’…” 等错误的原因及解决方法,包括如何在构建时确保符号不被隐藏。
使用 REST API 添加或更新 Bitbucket 构建状态2021-07-25·364 字·1 分钟沈显鹏Bitbucket Shell本文介绍如何通过 Bitbucket REST API 为指定提交添加或更新构建状态,并给出 Shell 脚本示例,适用于手动修复或补充构建状态的场景。
关于代码覆盖率 (About Code Coverage)2021-07-14·1527 字·4 分钟沈显鹏Coverage DevOps本文简要介绍了代码覆盖率的概念、重要性、常见指标、工作原理以及主流工具,强调了不要过度依赖代码覆盖率指标。
Jenkins 作业超时后让构建失败的方法(已解决)2021-06-24·331 字·1 分钟沈显鹏Jenkins本文介绍如何在 Jenkins 流水线中正确处理超时场景,通过 try 和 catch 结合 error 确保超时后作业会失败。
解决在 AIX 上 Git Clone 失败的两个问题2021-06-20·1279 字·3 分钟沈显鹏Git AIX Jenkins本文记录了在 AIX 上使用 Jenkins 进行 Git Clone 时遇到的两个问题及其解决方法,包括依赖库加载失败和 SSH 认证失败。
通过解除文件资源限制:解决在 AIX 使用 Git 下载大容量仓库失败问题2021-06-17·482 字·1 分钟沈显鹏Git AIX Ulimit在 AIX 系统中遇到 Git 下载大容量仓库时因文件大小限制导致失败,通过修改 ulimit 设置解决问题。
关于 Artifactory 上传制品变得非常缓慢,偶尔失败的问题分享2021-06-16·710 字·2 分钟沈显鹏Artifactory Troubleshooting在使用 JFrog Artifactory 上传制品时遇到速度缓慢和上传失败的问题,经过排查和解决,分享经验和教训。
解决 ESlint HTML 报告在 Jenkins 作业中无法正常显示的问题2021-06-07·331 字·1 分钟沈显鹏ESlint Jenkins Troubleshooting本文记录了 ESlint HTML 报告在 Jenkins 中因内容安全策略(CSP)限制而无法正确显示的问题,并介绍了如何通过修改 Jenkins 配置使报告正常加载。
Git 常见设置指北2021-05-14·773 字·2 分钟沈显鹏Git本文介绍了在使用 Git 提交代码之前需要进行的一些常见设置,包括配置用户名和邮箱、处理换行符、编写规范的提交信息等,帮助开发者更好地管理代码版本。
当 Artifactory “Download Folder 功能被禁用”时如何下载整个文件夹的制品2021-05-04·435 字·1 分钟沈显鹏JFrog Artifactory本文介绍了在 JFrog Artifactory 禁用“Download Folder”功能时,如何使用 Artifactory REST API 来批量下载整个文件夹的制品,并提供了基于 Shell 脚本的示例实现。
为什么 Windows Installer 会弹出窗口?(已解决)2021-04-22·391 字·1 分钟沈显鹏Windows本文解释了一个常见的 Windows 安装程序问题:安装时意外弹出窗口的原因,以及通过修正构建文件夹命名规则来解决该问题的方法。
JaCoCo 代码覆盖率实践分享2021-04-06·1803 字·4 分钟沈显鹏JaCoCo Gradle Coverage本文介绍了 JaCoCo 的使用方法,包括 Gradle 配置、执行测试生成报告、报告参数说明以及如何忽略指定的包或类影响测试覆盖率结果。
你的 Python 代码够不够 Pythonic?2021-03-28·1093 字·3 分钟沈显鹏Pythonic Python本文介绍了 Pythonic 的概念,并通过示例展示如何编写更简洁、优美的 Python 代码,帮助开发者提升代码质量和可读性。
在 Jenkins 中为不同分支设置不同的默认参数2021-03-24·408 字·1 分钟沈显鹏Jenkins本文介绍如何在 Jenkins 多分支流水线中,根据构建分支动态设置不同的默认参数,从而实现分支差异化配置。
基于谷歌代码审查(Code Review)法则的思考与实践2021-03-20·1497 字·3 分钟沈显鹏CodeReview本文介绍了谷歌的代码审查法则,并分享了如何在团队中有效实施代码审查的实践经验,包括流程控制和自动化检查等方面。
Jenkins 升级后 Windows Agent 无法启动的解决方法2021-02-11·325 字·1 分钟沈显鹏Jenkins本文介绍 Jenkins 升级后 Windows Agent 无法启动的问题,以及通过更新 Windows Slaves 插件和修改配置文件来解决的步骤。
预测 2021 年的 DevOps 趋势2021-01-21·3214 字·7 分钟沈显鹏DevOps本文介绍了 2021 年 DevOps 领域的主要趋势,包括微服务架构、无服务器计算、Kubernetes 的普及以及 DevSecOps 的兴起。
2021年DevOps工程师的学习路线2021-01-21·2290 字·5 分钟沈显鹏DevOps本文介绍了成为DevOps工程师所需的技能和工具,涵盖软件开发、操作系统、网络安全、容器化、持续集成与部署等方面的知识。
Jenkins 中 `result` 与 `currentResult` 的区别2021-01-14·492 字·1 分钟沈显鹏Jenkins本文解释了 Jenkins Pipeline 中 result 与 currentResult 的区别,并通过 Declarative Pipeline 与 Scripted Pipeline 示例展示它们在不同阶段的表现。
在 Windows 上开启 22 端口并让其处于监听状态2021-01-12·307 字·1 分钟沈显鹏OpenSSH Windows本文介绍如何在 Windows 上开启 22 端口并确保其处于监听状态,以便支持 SSH 连接。内容包括安装 OpenSSH 以及防火墙配置步骤。
建议在 Bitbucket/GitHub 中启用的仓库设置2021-01-12·599 字·2 分钟沈显鹏Bitbucket Git列出 Bitbucket 和 GitHub 仓库推荐启用的设置,包括禁止强制推送、分支保护、标签管理、合并检查以及提交信息规范等。
启用与禁用 Git sparse-checkout2021-01-11·244 字·1 分钟沈显鹏Git介绍如何启用与禁用 Git sparse-checkout,包括配置只检出指定目录的示例,以及如何恢复到完整检出状态。
解决 Code Sign 默认时间戳服务器 http://timestamp.verisign.com/scripts/timstamp.dll 不可用2021-01-06·488 字·1 分钟沈显鹏CodeSign本文介绍了如何解决 Verisign 时间戳服务器不可用的问题,提供了替代的时间戳服务器地址,帮助开发者顺利完成代码签名。
2021 年国外 IT 公司对于 DevOps 工程师的要求有哪些?2021-01-03·4054 字·9 分钟沈显鹏DevOps了解国外 IT 公司对 DevOps 工程师的技能要求,帮助你在 2021 年树立学习方向,获取理想岗位。
备份 Jenkins 的方法2020-11-24·442 字·1 分钟沈显鹏DevOps Jenkins Backup介绍如何使用 ThinBackup 插件或 Shell 脚本备份 Jenkins,确保 Jenkins 配置和构建数据安全存储。
JaCoCo 实现原理 (JaCoCo Implementation Design)2020-11-17·2684 字·6 分钟沈显鹏JaCoCo Coverage DevOps介绍 JaCoCo 的实现设计,包括覆盖率分析机制、Java 版本要求、字节码操纵、内存使用等方面的内容。
写给那些想使用 JFrog Artifactory 管理制品的人2020-10-04·2825 字·6 分钟沈显鹏Artifactory JFrog本文介绍了 JFrog Artifactory 的概念、优势、工作原理以及最佳实践,帮助读者了解如何使用 Artifactory 管理软件制品。
在 GitHub 上发布一个 Python 项目需要注意哪些2020-09-13·1458 字·3 分钟沈显鹏Python PyPI Release本文介绍个人或企业在 GitHub 上发布一个 Python 项目需要了解和注意的内容,包括项目结构、依赖管理、版本控制等方面的建议。
关于 Python pip install 与版本管理2020-08-30·718 字·2 分钟沈显鹏Python解释 pip install 在不同版本号场景下的行为,包括如何处理 beta 版本,以及在指定版本号时使用 --upgrade 的影响。
使用 REST API 更新 Jira Server 账号头像2020-08-17·215 字·1 分钟沈显鹏Jira介绍如何通过 Jira REST API 更新 Jira Server 账号的头像,并提供 Python 和 Postman 示例。
解决 “Remote session was disconnected because there are no Remote Desktop client access licenses available”2020-08-10·262 字·1 分钟沈显鹏Windows修复 Windows Server 2012 R2 上的 RDP 连接问题,错误提示为没有可用的远程桌面客户端访问许可证。
通过 generic-webhook-trigger 插件实时获取 Bitbucket Repository Events2020-08-07·716 字·2 分钟沈显鹏Bitbucket Jenkins Webhook本文介绍如何使用 Jenkins 的 generic-webhook-trigger 插件来实时获取 Bitbucket 仓库的事件信息,如 Pull Request ID 等。
Jenkins 执行 Shell 如果返回值不为0,作业(Job)停止并失败怎么办?2020-07-22·393 字·1 分钟沈显鹏Jenkins如何在 Jenkins Pipeline 中处理 Shell 返回值不为0的情况,以确保作业(Job)在执行成功后仍然显示为成功状态。