让你的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是解…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...

visual studio 2022更改主题为深色
visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中,选择 环境 -> 常规 ,将其中的颜色主题改成深色 点击确定,更改完成...
基于数字孪生的水厂可视化平台建设:架构与实践
分享大纲: 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年,数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段,基于数字孪生的水厂可视化平台的…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验
系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...
拉力测试cuda pytorch 把 4070显卡拉满
import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试,通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小,增大可提高计算复杂度duration: 测试持续时间(秒&…...

EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...

网络编程(UDP编程)
思维导图 UDP基础编程(单播) 1.流程图 服务器:短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...
Java编程之桥接模式
定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...
【JavaSE】多线程基础学习笔记
多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...