原文链接:https://www.chenweiliang.com/cwl-31737.html
💻教你用Jekyll自动同步脚本✨快速推送到Neocities空间🎉
🚀快速上手!用Jekyll自动同步脚本✨将你的网站推送到Neocities免费空间🏡,再也不用手动操作啦!详细步骤📋+实用技巧💡,让你轻松搞定网站发布🌐。点击查看完整教程🔍,马上体验便捷操作!🎉
使用脚本来同步Jekyll生成的静态网站到Neocities的基本思路如下:
搭建Jekyll网站:首先,你需要构建你的Jekyll网站。
- 运行
jekyll build
命令,会在_site/
目录下生成静态文件。
使用Neocities CLI:安装Neocities的命令行工具,这是一个Ruby gem
- 可以通过运行以下命令来安装:
gem install neocities
- 使用批处理脚本自动同步方式,可以将本地的静态网站目录同步推送到Neocities。
如何解决ERROR: Could not find a valid gem ‘neocities’?
假如运行了命令:
gem install neocities
出现以下错误:
ERROR: Could not find a valid gem ‘neocities-jekyll’ (>= 0), here is why:
Unable to download data from https :// gems. ruby-china .com/ – SocketError: Failed to open TCP connection to gems.ruby-china.com:443 (getaddrinfo: 不知道这样的主机。 ) (https://gems.ruby-china.com/specs.4.8.gz)
出现该错误的原因是你使用的 RubyGems 源 https :// gems. ruby-china .com/ 无法连接。
这可能是由于以下几个原因:
- 网络问题: 你可能没有连接到互联网,或者你的互联网连接不稳定。
- RubyGems 源问题: RubyGems 源可能出现故障或在维护。
- 防火墙问题: 你的防火墙可能阻止了 RubyGems 连接到源。
以下是一些解决此问题的方案:
1. 检查网络连接
首先,请确保你已连接到互联网并可以访问其他网站。你可以打开网页浏览器并访问一些网站,例如 https://www.chenweiliang.com/ 或 https://www.etufo.org/,以测试你的连接。
2. 更改 RubyGems 源
如果你的网络连接如常,可以尝试更改 RubyGems 源。
你可以使用以下命令将 RubyGems 源更改为官方源:
gem source -a https://rubygems.org/
3. 然后,再次尝试安装 Neocities 插件:
gem install neocities
Jekyll如何使用自动同步脚本推送到Neocities免费网站空间?
编写同步脚本:由于neocities push
不会删除已存在的文件,你需要编写一个脚本来同步文件。
这个脚本可以比较本地 _site/
目录和Neocities上的文件,删除Neocities上那些在本地已经不存在的文件。
下面是一个简单的 Windows 批处理脚本自动同步文件,展示了如何执行上述步骤:
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
REM 设置Neocities API密钥环境变量
set NEOCITIES_API_KEY=%NEOCITIES_API_KEY%
REM 检查API密钥是否已经设置
IF "!NEOCITIES_API_KEY!" == "" (
echo Neocities API key is not set in the environment variables.
goto error
)
REM 定义本地静态网站目录
set LOCAL_SITE_DIR=d:\Jekyll\site1\_site
REM 删除不在目录中的站点文件(小心!)
neocities push --prune "%LOCAL_SITE_DIR%"
:sync
REM 同步本地静态网站到Neocities
echo Syncing local site to Neocities...
neocities push "%LOCAL_SITE_DIR%"
echo Sync complete.
goto end
:error
echo There were errors during the script execution.
ENDLOCAL
REM 定义本地静态网站目录set LOCAL_SITE_DIR=d:\Jekyll\site1\_site
- 将以上脚本里的
d:\Jekyll\site1
修改为你的文件夹名称。
使用说明:
- 将此脚本保存为 .bat 文件,例如
sync_to_neocities.bat
。 - 将API密钥设置为系统环境变量
NEOCITIES_API_KEY
,然后在脚本中引用它(可从 Neocities 账户设置中找到你的 API 密钥)。 - 确保Neocities CLI工具已经安装,并且 neocities 命令可以在命令行中正常使用。
- 打开命令提示符(cmd)或PowerShell窗口。
- 导航到脚本所在的目录。
- 运行脚本:
sync_to_neocities.bat
如何设置Neocities API密钥环境变量?
- 打开Windows的“控制面板”。
- 单击“系统和安全”。
- 在“系统和安全”下,单击“系统”。
- 在“系统面板”中,单击“高级系统设置”。
- 在系统属性对话框中,单击“环境变量”按钮。
- 在环境变量对话框中,单击新建、编辑或删除按钮以添加、编辑或删除系统或用户变量。
- 在“系统变量”中新建一个“
NEOCITIES_API_KEY
”变量,并将变量值设置为你的API密钥。
如何运行脚本?
打开命令提示符(cmd)。
导航到脚本所在的目录,例如:
cd /d d:\Jekyll\site1
运行脚本:
sync_to_neocities.bat
Neocities上传命令说明
Neocities Push
|\—/|
| o_O | Neocities
\_^_/
Push
– 递归地将本地目录上传到你的 Neocities 站点
例子:
- $
neocities push
递归上传当前目录。 $ neocities push -e node_modules -e Secret.txt
从推送中排除某些文件$ neocities Push --no-gitignore
不要使用 .gitignore 来排除文件$ neocities Push --dry-run
只需显示要上传的内容$ neocities Push --prune
删除不在目录中的站点文件(小心!)
欢迎转载《Jekyll如何使用自动同步脚本推送到Neocities免费网站空间?》
欢迎分享本文链接:https://www.chenweiliang.com/cwl-31737.html
网站地址:https://www.chenweiliang.com/
欲获取更多资讯内幕和秘技,欢迎进入Telegram频道:https://www.chenweiliang.com/go/tgchannel
没有评论:
发表评论