让你的Github Profile高大时尚!
目录
前言
正文
GitHub Profile
特点:
GitHub Actions
核心概念:
应用场景:
RSS
RSS的主要特点:
使用场景:
RSS的工作原理:
关于Github Readme Card
关于Github贡献的3D图
关于个人最新博文的获取
关于代码时常占比模块
尾声
- 🔭 Hi,I’m Pleasure1234
- 🌱 I’m currently learning Vue.js,SpringBoot,Computer Security and so on.
- 👯 I’m studying in University of Nottingham Ningbo China
- 📫 You can reach me by url below:
- My Blog Website: https://blog.yiming1234.cn
- My CSDN Blog: https://yiming1234.blog.csdn.net
- My Email:Pleasure@yiming1234.cn
- My Github:Pleasurecruise (自由的世界人) · GitHub
- It's my pleasure to see you follow me!
原文地址:让你的Github Profile高大时尚! - Pleasure的博客
下面是正文内容:
前言
距离上一次写博客已经是三个月前的事了
这段时间主要在写自己的项目
于是找了一个相对合适的话题,来聊聊
正文
如图可见,下面是我的github主页样式
不仅具备丰富的样式,还能根据在github的活动贡献,博文的发布,写代码的时间和占比等对个人的主页进行实时的更新操作
仓库地址:https://github.com/Pleasurecruise/Pleasurecruise
首先针对什么都不知道的小白简单介绍一些前置知识
GitHub Profile
在 GitHub 上,每个用户或组织都可以创建一个名称与其用户名相同的特殊仓库,这种仓库被称为“特殊仓库”(Special Repository)。例如,你的仓库名为 Pleasurecruise/Pleasurecruise
,其中 Pleasurecruise
是你的 GitHub 用户名。
特点:
展示在个人资料页:
- 该仓库的 README 文件会显示在你的 GitHub 个人资料页面的顶部位置,作为个人介绍。
- 这意味着你可以在
Pleasurecruise/Pleasurecruise
仓库的README.md
文件中添加任何你希望展示给别人看的信息,如个人简介、项目、社交媒体链接等。
个性化展示:
- 你可以使用 Markdown 和 HTML 来设计个人简介,嵌入图片、GIF、链接、徽章、统计图、贡献图等。
- 可以使用 GitHub Actions 自动更新一些内容(例如:显示最新的博客文章、最新的 GitHub 动态等)。
应用场景:
- 个人展示:用于展示你的个人技能、项目、成就等。
- 自动化更新:可以通过 GitHub Actions 自动更新 README 文件中的动态内容,如博客、代码贡献、项目进展等。
GitHub Actions
GitHub Actions 是 GitHub 提供的一种持续集成和持续交付(CI/CD)服务。它允许你在特定事件发生时(例如代码推送、Pull Request 提交、定时任务等),自动化执行某些操作或脚本。你可以通过 YAML 文件定义工作流,来自动化处理各种任务。
核心概念:
Workflow(工作流):
- 工作流是由一系列步骤组成的自动化过程。每个工作流可以在特定的事件触发时运行(如代码推送或创建 PR),也可以通过手动触发或定时运行。
- 工作流文件通常放置在
.github/workflows/
目录下,文件格式为.yaml
。
Job(任务):
- 每个工作流可以包含多个任务(Job),每个任务是一系列需要在特定环境(如 Linux、Windows、macOS)中运行的步骤。
- 任务之间可以是并行执行或依赖执行。
Steps(步骤):
- 步骤是任务的最小单元,包含要执行的具体操作。步骤可以是执行脚本、安装依赖、运行测试、部署应用等。
Events(事件):
- 事件是触发工作流运行的条件,例如代码推送、PR 提交、Release 发布、定时任务等。
Runner(执行器):
- Runner 是执行工作流中任务的服务器环境,GitHub 提供默认的虚拟环境,如
ubuntu-latest
,也可以使用自定义的 runner。
应用场景:
- 自动化测试:代码提交后,自动运行测试用例,确保代码质量。
- 自动部署:代码合并或发布版本后,自动部署应用到服务器。
- 生成和更新文档:例如,定期或事件触发更新 README 中的贡献图、最新动态等信息。
- 代码格式化和检查:自动执行代码格式化检查、Lint 检查等,确保代码风格一致。
- 发布到包管理器:例如,将代码自动发布到 NPM、PyPI 等包管理平台。
通过 GitHub Actions,你可以轻松地实现 CI/CD 流程的自动化,提升工作效率,确保代码的质量与一致性。
RSS
RSS(Really Simple Syndication 或 Rich Site Summary)是一种用于分发和聚合网络内容的格式。它允许网站以结构化的方式将更新内容(如文章、新闻、博客等)发布出去,用户或其他应用程序可以通过RSS订阅这些内容。
RSS的主要特点:
- 内容聚合:RSS提供了一种标准化的格式,用于将网站上的更新信息发布给订阅者。这可以包括新闻、博客文章、播客等内容。
- 自动更新:用户通过RSS阅读器(如Feedly、Inoreader等)订阅RSS源后,无需手动访问网站,当内容有更新时,RSS阅读器会自动拉取最新的内容,方便用户及时获取信息。
- XML格式:RSS是一种基于XML的文件格式,包含了文章的标题、链接、摘要、发布日期等信息,简单易用。
使用场景:
- 订阅网站更新:用户可以通过RSS订阅自己感兴趣的网站,获取最新的博客文章、新闻等,而无需逐一访问网站。
- 内容聚合:新闻门户、应用程序可以通过RSS汇集来自多个来源的内容,形成信息流。
- 播客发布:RSS也是播客分发的主要手段,订阅者可以通过RSS自动接收到新发布的播客节目。
RSS的工作原理:
- RSS Feed生成:网站通过RSS生成器或CMS(如WordPress)生成RSS源。
- 用户订阅:用户通过RSS阅读器订阅这些RSS源。
- 内容拉取:RSS阅读器会定期检查订阅的RSS源,一旦有新内容,阅读器会将其显示给用户。
RSS是一个便捷的方式来追踪和管理多站点的内容,尤其适合那些经常更新的网站或博客。
下面是重点!!
主要介绍我在自己的Github Profile中用到的几个应用和仓库地址
关于Github Readme Card
这应该是一个比较著名的仓库
可以在个人的readme中添加Stats Card,Top Languages Card,GitHub Extra Pins等Demo
主要涉及到的仓库
https://github.com/anuraghazra/github-readme-stats
这个仓库没有涉及到个人的工作流所以不需要建立.github/workflow配置文件
关于Github贡献的3D图
通过github secrets读取在github的contribution利用svg生成3D首图
主要涉及到的仓库
https://github.com/yoshi389111/github-profile-3d-contrib
需要在README.md中添加的字段

针对这个仓库,工作流参考样例
name: GitHub-Profile-3D-Contribon:schedule: # 每天 18:00 UTC 运行- cron: "0 18 * * *"workflow_dispatch:jobs:build:runs-on: ubuntu-latestname: generate-github-profile-3d-contribsteps:- name: Checkout repositoryuses: actions/checkout@v4.2.0with:token: ${{ secrets.PAT_TOKEN }}fetch-depth: 0- name: Generate GitHub Profile 3D Contributionuses: yoshi389111/github-profile-3d-contrib@0.7.1env:GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}USERNAME: Pleasurecruise- name: Commit & Push changesrun: |git config user.name github-actionsgit config user.email github-actions@github.comgit add -A .git diff --staged --exit-code || (git commit -m "generated" && git push https://x-access-token:${{ secrets.PAT_TOKEN }}@github.com/${{ github.repository }}.git)
关于个人最新博文的获取
前提是你有自己的个人博客,而且有自己的RSS订阅源
拿CSDN的博客举例,可以在下图看到一个RSS订阅字样的按钮
在WordPress中,RSS源(RSS feed)的默认位置通常为以下形式:
- 网站的主RSS源:
https://yourdomain.com/feed/
- 分类RSS源:
https://yourdomain.com/category/categoryname/feed/
- 标签RSS源:
https://yourdomain.com/tag/tagname/feed/
- 评论RSS源:
https://yourdomain.com/comments/feed/
其中,yourdomain.com
应该替换为你的实际域名。
你可以通过在浏览器中访问这些URL来查看相关RSS源。
如果你的WordPress网站使用的是自定义链接结构或某些插件(可以在后台管理界面通过设置/固定链接选项进行确认),RSS源的URL可能会有所不同,但大多数情况下这些是标准位置。
主要涉及到的仓库:
https://github.com/gautamkrishnar/blog-post-workflow
需要在README.md中添加的字段
<!-- BLOG-POST-LIST:START -->
<!-- BLOG-POST-LIST:END -->
针对这个仓库,工作流参考样例
name: Latest blog post workflow
on:schedule: # Run workflow automatically- cron: '0 * * * *' # Runs every hour, on the hourworkflow_dispatch: # Run workflow manually (without waiting for the cron to be called), through the GitHub Actions Workflow page directly
permissions:contents: write # To write the generated contents to the readmejobs:update-readme-with-blog:name: Update this repo's README with latest blog postsruns-on: ubuntu-lateststeps:- name: Checkoutuses: actions/checkout@v4- name: Pull in dev.to postsuses: gautamkrishnar/blog-post-workflow@v1with:max_post_count: 5committer_username: "pleasurecruise"committer_email: "pleasure@yiming1234.cn"feed_list: "https://blog.yiming1234.cn/index.php/feed"template: "$newline- [$title]($url) $newline"
关于代码时常占比模块
首先你需要在你的IDE中安装WakaTime的插件,填写密钥初始化之后开始记录你每天的代码实况
推荐主流的IDE,Visual Studio Code,JetBrains系列
主要涉及到的仓库:
https://github.com/athul/waka-readme
需要在README.md中添加的字段
<!--START_SECTION:waka-->
<!--END_SECTION:waka-->
针对这个仓库,工作流参考样例
name: Waka Readmeon:# for manual workflow triggerworkflow_dispatch:schedule:# runs at 12 AM UTC (5:30 AM IST)- cron: "0 0 * * *"jobs:update-readme:name: WakaReadme DevMetricsruns-on: ubuntu-lateststeps:- uses: athul/waka-readme@master # this action namewith:GH_TOKEN: ${{ secrets.PAT_TOKEN }}WAKATIME_API_KEY: ${{ secrets.WAKATIME_API_KEY }}SHOW_TITLE: true # optionalSECTION_NAME: waka # optionalBLOCKS: -> # optionalCODE_LANG: rust # optionalTIME_RANGE: all_time # optionalLANG_COUNT: 10 # optionalSHOW_TIME: true # optionalSHOW_TOTAL: true # optionalSHOW_MASKED_TIME: false # optionalSTOP_AT_OTHER: true # optionalIGNORED_LANGUAGES: YAML JSON TOML # optional
在文章的最后还有几个需要注意的点
1.上述只是介绍应用和仓库地址以及我个人使用的示例,并没有介绍具体的使用方法。感兴趣的可以自行点击仓库链接去wiki中查看使用细节。挑选你自己喜欢的主题和方法类。
2.不知道为什么,在工作流中使用{{secrets.GitHub_TOKEN}}时理论上是不需要另外进行生成和储存的,可是我直接使用的时候总是提示权限不足。所以在上面的示例中我采取的是手动配置该环境变量的方式。
3.actions/checkout要使用v4.2.0版本而不是v3.0版本,不然会报错如下
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20
尾声
后续可能主要会写一些和算法有关的博客,因为大二开始主要学这些了
希望对你有所帮助
相关文章:

让你的Github Profile高大时尚!
目录 前言 正文 GitHub Profile 特点: GitHub Actions 核心概念: 应用场景: RSS RSS的主要特点: 使用场景: RSS的工作原理: 关于Github Readme Card 关于Github贡献的3D图 关于个人最新博文的获取 关于代码…...

ElasticSearch备考 -- Multi match
一、题目 索引task有3个字段a、b、c,写一个查询去匹配这三个字段为mom,其中b的字段评分比a、c字段大一倍,将他们的分数相加作为最后的总分数 二、思考 通过题目要求对多个字段进行匹配查询,可以考虑multi match、bool query操作。…...
滚雪球学Oracle[2.5讲]:数据库初始化配置
全文目录: 前言一、配置文件的高级参数设置1.1 open_cursors:游标打开数量限制案例演示 1.2 session_cached_cursors:会话缓存游标数量案例演示 1.3 pga_aggregate_target与sga_target:内存分配优化案例演示 二、内存管理模式的选…...
Java - Spring框架 (ios+aop)
Spring 简介 Spring框架是为了解决企业应用开发的复杂性,使用基本的JavaBean代替EJB,并提供了更多的企业应用功能,Spring是一个轻量级控制反转(IOC)和面向切面(AOP)的容器框架。 Spring优点 Spring是一个开源的免费的框架(容器) Spring是一…...

计算机网络(十) —— IP协议详解,理解运营商和全球网络
目录 一,关于IP 1.1 什么是IP协议 1.2 前置认识 二,IP报头字段详解 三,网段划分 3.1 IP地址的构成 3.2 网段划分 3.3 子网划分 3.4 IP地址不足问题 四,公网IP和私有IP 五,理解运营商和全球网络 六ÿ…...

速速收藏!这些2024年上映的AI电影与短剧,申请加入你的国庆假期宅家计划!
2024年上映的AI电影 01 科幻惊悚电影《致命AI Afraid》 导演:克里斯韦兹上映日期:2024-08-30(美国)片长:84分钟剧情简介:Curtis一家被选中去测试一种革新性的居家设备:数字家庭助手AIA,包括各种感应设备和摄像头等,…...
23.2 prometheus为k8s做的4大适配工作
本节重点介绍 : k8s监控中的4大采集类型总结prometheus为k8s监控做的4大适配工作 k8s关注指标分析 在监控每个细分的领域时,我们都要先思考下到底需要关注哪些方面的指标。k8s中组件复杂,我们主要专注的无外乎四大块指标:容器基础资源指标…...

1、如何查看电脑已经连接上的wifi的密码?
在电脑桌面右下角的如下位置:双击打开查看当前连接上的wifi的名字:ZTE-kfdGYX-5G 按一下键盘上的win R 键, 输入【cmd】 然后,按一下【回车】。 输入netsh wlan show profile ”wifi名称” keyclear : 输入完成后,按一下回车&…...
循环链表和双向链表
一、 带尾指针的循环链表的合并 算法步骤: p存表头结点——pTa->next;Tb表头连接到Ta表尾——Ta->nextTb->next->next;释放Tb表头结点——delate Tb->next;修改指针——Tb->nextp; LinkList Connect(LinkList Ta,LinkList Tb){pTa->next; …...

【Linux庖丁解牛】—Linux基本指令(中)!
🌈个人主页:秋风起,再归来~🔥系列专栏: Linux庖丁解牛 🔖克心守己,律己则安 目录 1、rmdir与rm指令 2、man指令 3、cp指令 4、mv指令 5、cat与tac指令 6、重定向 7、more指令 8、…...

【电路笔记】-运算放大器微分器
运算放大器微分器 文章目录 运算放大器微分器1、概述2、运算放大器微分器的表示2.1 理想微分器2.2 输出公式2.3 交流分析3、实际微分器3.1 理想配置的局限性3.2 带串联电阻的伪微分器3.3 具有并联电容器的伪微分器4、总结1、概述 在我们之前关于积分器运算放大器的文章中,我们…...

【Unity踩坑】使用内购时获取Google Play license key
在Unity中使用了IAP(内购)后,需要设置Google Play license key。 这个key需要在Google Play Console中(https://play.google.com/console),找到相应的应用,在左侧“创收设置”里可以找到license…...
华为OD机试真题-数组拼接-2024年OD统一考试(E卷)
最新华为OD机试考点合集:华为OD机试2024年真题题库(E卷+D卷+C卷)_华为od机试题库-CSDN博客 每一题都含有详细的解题思路和代码注释,精选c++、JAVA、Python三种语言解法。帮助每一位考生轻松、高效刷题。订阅后永久可看,发现新题及时跟新。 题目描述 现在有多组整数数…...

【Android 14源码分析】Activity启动流程-2
忽然有一天,我想要做一件事:去代码中去验证那些曾经被“灌输”的理论。 – 服装…...

ubuntu 18.04 cuda 11.01 gpgpu-sim 裸机编译
1,环境 ubuntu 18.04 x86_64 cuda 11.01 gpgpu-sim master commit 90ec3399763d7c8512cfe7dc193473086c38ca38 2,预备环境 一个比较新的 ubuntu 18.04,为了迎合 cuda 11.01 的版本需求 安装如下软件: sudo apt-get instal…...

【Kubernetes】常见面试题汇总(五十二)
目录 116. K8S 集群服务暴露失败? 117.外网无法访问 K8S 集群提供的服务? 特别说明: 题目 1-68 属于【Kubernetes】的常规概念题,即 “ 汇总(一)~(二十二)” 。 题目 69-…...

o1-preview 在 IMO 2024 第一题的实测表现
相关博客:Learning to Reason with LLMs 以及 Introducing OpenAI o1-preview 测试了 IMO 2024 的第一题,OpenAI-o1-preview 的解题过程包括两部分:思考和推理。 正确答案是全体偶数,o1-preview 的 **思考方向正确,推…...
iOS--RunLoop原理
前言 曾经在写项目的时候遇到过这么一个问题。: 项目中添加了一个tableview,然后还有一个计时器,当滑动tableview的时候会阻塞计时器,你得执行这么一段代码后,计时器才能正常运行。 RunLoop.current.add(timer, for…...

并查集——从LeetCode题海中总结常见套路
目录 并查集定义 LeetCode128.最长连续序列 先去重再sort: 改进去重的方法: 参考: 并查集定义 在计算机科学中,并查集是一种树型的数据结构,用于处理一些不交集(Disjoint Sets)的合并及查…...
深入理解作用域【JavaScript】
一、作用域的内部原理 JavaScript 的作用域机制是理解变量如何被访问和存储的重要概念。下面详细介绍作用域的内部原理,包括编译、执行、查询、嵌套和异常处理这五个步骤。 1. 编译 在 JavaScript 的执行过程中,首要的步骤是编译。尽管JavaScript是解…...

XCTF-web-easyupload
试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...
spring:实例工厂方法获取bean
spring处理使用静态工厂方法获取bean实例,也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下: 定义实例工厂类(Java代码),定义实例工厂(xml),定义调用实例工厂ÿ…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
【Go语言基础【12】】指针:声明、取地址、解引用
文章目录 零、概述:指针 vs. 引用(类比其他语言)一、指针基础概念二、指针声明与初始化三、指针操作符1. &:取地址(拿到内存地址)2. *:解引用(拿到值) 四、空指针&am…...

使用LangGraph和LangSmith构建多智能体人工智能系统
现在,通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战,比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...

接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...
苹果AI眼镜:从“工具”到“社交姿态”的范式革命——重新定义AI交互入口的未来机会
在2025年的AI硬件浪潮中,苹果AI眼镜(Apple Glasses)正在引发一场关于“人机交互形态”的深度思考。它并非简单地替代AirPods或Apple Watch,而是开辟了一个全新的、日常可接受的AI入口。其核心价值不在于功能的堆叠,而在于如何通过形态设计打破社交壁垒,成为用户“全天佩戴…...
数据库正常,但后端收不到数据原因及解决
从代码和日志来看,后端SQL查询确实返回了数据,但最终user对象却为null。这表明查询结果没有正确映射到User对象上。 在前后端分离,并且ai辅助开发的时候,很容易出现前后端变量名不一致情况,还不报错,只是单…...

新版NANO下载烧录过程
一、序言 搭建 Jetson 系列产品烧录系统的环境需要在电脑主机上安装 Ubuntu 系统。此处使用 18.04 LTS。 二、环境搭建 1、安装库 $ sudo apt-get install qemu-user-static$ sudo apt-get install python 搭建环境的过程需要这个应用库来将某些 NVIDIA 软件组件安装到 Je…...