【问题标题】:Can someone clone my GitHub Pages repo?有人可以克隆我的 GitHub Pages 存储库吗?
【发布时间】:2019-01-19 00:47:21
【问题描述】:

我是 GitHub Pages 的新手,但我仍在努力思考这个概念。

如果我使用 GutHub Pages 发布博客(使用 Jekyll),其他人能否进来并克隆我的整个 repo,从而获取我的所有内容、我的主题(我购买的)和我所有的图像等?

或者,如果我的博客是使用 GitHub Pages 发布的,GitHub 默认会阻止人们执行基本的 GitHib 功能(即克隆存储库)。

感谢您的帮助。

【问题讨论】:

  • 好吧,如果你在网络上发布文章、图片和 CSS,无论你是否使用 github 页面,任何人都可以下载它们:这是能够阅读文章、查看图片的要求,并享受主题。
  • GitHub 中的任何东西都是存储库,任何人都可以克隆它。但是,当然,所有内容都可以在网络上下载。这就是它的设计方式。
  • 是的,感谢您的回复。我想不同之处在于,当您直接下载网站时,您正在下载呈现的 HTML,您将无法访问所有配置文件或布局及其随附的逻辑(for 循环、条件语句等)你会从克隆一个 repo 中得到。
  • 我可以细化这个问题吗?有人可以通过单击按钮下载或分叉博客吗? (例如,通过单击“下载 zip”按钮)。尽管网络上的所有内容或多或少都可以下载,但这并不意味着为用户提供一种超级简单的方式来潜逃多年非公共领域的内容是一个好主意。这就像让你的前门大开而不是仅仅解锁。不是每个人都可以编写wget 命令。这是决定博客平台的合理考虑因素。谢谢。

标签: github jekyll


【解决方案1】:

在 GitHub Pages 上托管网站而不向用户提供访问您的“原始内容”和模板的一种解决方案是将“生成的网站”上传到 GitHub:

  • 通过在您的终端中运行以下任一项,在本地构建您的网站。

    JEKYLL_ENV=production bundle exec jekyll build
    JEKYLL_ENV=production jekyll build
    
  • 设置目标目录,_site 作为你的 git repo:

    cd _site
    git init
    git remote add origin https://github.com/YOUR-USERNAME/YOUR-USERNAME.github.io.git
    
  • 提交生成的站点并推送到您的 GitHub 存储库

    git add .
    git commit -m "Generated my site!"
    git push origin master
    

    如果您的存储库不为空,则上面的 git push 将失败。使用 --force 标志将覆盖您的远程分支。

    git push origin master --force
    

【讨论】:

  • 非常感谢。这对我来说应该是显而易见的,但事实并非如此。谢谢!
猜你喜欢
  • 2011-04-16
  • 2021-12-31
  • 2020-09-23
  • 1970-01-01
  • 1970-01-01
  • 2010-12-17
  • 1970-01-01
  • 2014-08-31
  • 2015-03-09
相关资源
最近更新 更多