【好玩】在 GitHub 主页上玩转贪吃蛇

在探索如何为我的 GitHub 主页添加更多个性化元素的过程中,我偶然发现了一种在主页上展示贪吃蛇游戏的独特方法。受到这个想法的启发,我决定尝试实现它,并在此分享我的经验和学到的教训。

账号准备

首先,你需要一个 GitHub 账号。如果你还没有,那么首先创建一个吧!

建立仓库

接着,创建一个与你的 GitHub 用户名相同的仓库。这是一个特殊的仓库,GitHub 会特别处理,你在这个仓库的 README.md 文件中的内容会显示在你的 GitHub 个人主页上。

复制代码,执行 Action

使用以下 GitHub Actions 工作流程,自动生成贪吃蛇游戏的 SVG 动画,并将其推送到仓库中。你需要将这段 YAML 代码添加到 .github/workflows 目录下的一个新文件中,比如命名为 snake-game.yml。

yaml 复制代码
name: generate animation

on:
  schedule:
    - cron: "0 */24 * * *"
  workflow_dispatch:
  push:
    branches:
      - master

jobs:
  generate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: generate github-contribution-grid-snake.svg
        uses: Platane/snk/svg-only@v3
        with:
          github_user_name: ${{ github.repository_owner }}
          outputs: |
            dist/github-contribution-grid-snake.svg
            dist/github-contribution-grid-snake-dark.svg?palette=github-dark
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      - name: push to the output branch
        uses: crazy-max/ghaction-github-pages@v3.1.0
        with:
          target_branch: output
          build_dir: dist
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

建立 README.md 文件,放上 SVG 图片

在你的仓库中创建一个 README.md 文件,并使用 Markdown 语法引入上面 Action 自动生成的 SVG 图片。

markdown 复制代码
![Snake animation](https://github.com/你的用户名/你的用户名/blob/output/github-contribution-grid-snake.svg)

比如:

踩坑和总结

在这个项目的实现过程中,我遇到了一些挑战和学习机会:

  1. 分支命名差异 :注意 GitHub 默认分支的命名可能是 main 或 master。根据你的实际情况修改工作流文件。

  2. 权限问题:刚开始时我遇到了权限不足的错误。经过研究,我发现需要正确设置 GitHub Actions 的权限,确保它有足够的权限来推送文件到仓库。

  3. 参考文章 :【好玩】如何在github主页放一条贪吃蛇

    解决方案包括使用个人访问令牌(PAT)并在仓库的 Settings > Secrets 中配置它。更重要的是,要确保在 Settings > Actions > General > Workflow permissions 中勾选 Read and write permissions。

通过这次项目,我不仅学习到了如何在 GitHub 主页上添加贪吃蛇游戏,也对 GitHub Actions 和仓库权限设置有了更深的理解。希望我的经验能帮助到其他寻求为他们的 GitHub 主页添加趣味性元素的开发者。

当然可以。在文章或博客的结尾添加一个温馨的呼吁,鼓励读者互动,是一个很好的做法。这不仅能增加文章的可见度,还能提供反馈机会,让作者了解内容的影响力。以下是你可以在文末添加的示例文本:

如果你觉得这篇文章对你有帮助,不妨给个赞👍或在评论中分享你的想法!你的支持是我创作的最大动力

相关推荐
弦儿3 分钟前
后端 Web 实战:登录认证(登录功能 + 会话技术 + JWT 令牌 + Filter/Interceptor)
后端
会编程的吕洞宾6 分钟前
LangChain4j 流式输出实战:让 AI 回复像打字机一样逐字显示
java·开发语言·人工智能·后端
武子康16 分钟前
CUDA OOM 不只是“显存不够”
人工智能·后端·agent
进击的丸子20 分钟前
基于 ArcFace SDK 的跨平台人脸特征值下发、同步以及存储方案
后端·算法·代码规范
郑州光合科技余经理22 分钟前
同城小程序开发:同一笔单在用户端和商家端各显示到哪
android·java·开发语言·前端·后端·uni-app·php
卷无止境32 分钟前
ARM与x86、x64的能效之争:指令集只是故事的开头
后端·python
陈随易36 分钟前
终于 Token 自由了,AI 开支下降 10 倍
前端·后端·程序员
橙子家1 小时前
集合与索引类异常【C# Exception 详解系列(三)】
后端
java_nnnn2 小时前
Spring MVC小案例(1)
java·后端·spring·mvc
陈随易2 小时前
从今天起,你只需要一个浏览器之Ego lite
前端·后端·程序员