起因
最近看到一个博客搭建项目,感觉很不错,项目地址: 蘑菇博客
经过
首先按照说明文档尝试着搭建,并在管理后台页面写了一遍测试文章, 并且选择了halo 下的一个展示主题:halo-theme-fantastic
搭建成功后的博客首页如图:
个人还是挺满意这个主题的,但是在文章归档页面却发现了一个明显的bug:
页面中文章的图片显示异常,点击后跳转链接为文章图片,通过F12查看页面源码:
发现是页面中的文章跳转链接和文章图片搞反了。
通常查看 halo-theme-fantastic 主题的源代码:
将post.fullPath
与 post.thumbnail
交换即可,改正后正常显示文章图片,并且正常跳转到文章详情页面:
结果
所以,终于第一次发现了GitHub上项目的bug并将其修复,惭愧中带点开心~
问题来了,我要怎么把这个修复提交给 halo-theme-fantastic 项目呢?
那就是 pull request 了。
之前工作和学习一直都是在gitlab上同一个代码库提交代码,常用命令就是 pull, push, merge
等,还没有尝试过向其他项目提pull request呢。 看来今天就是给渣渣我的一个好机会。
笔记
经常查询,了解以下操作步骤,特此记录下,参考链接: creating-a-pull-request
1. fork 原始项目
登录 GitHub 网站,找到原始项目 https://github.com/imkundev/halo-theme-fantastic,点击右上角的 fork 按钮
这样就会在你自己的GitHub 上有了一个相同的项目:
2. 复制自己的项目到本地
> git clone https://github.com/lyk2655/halo-theme-fantastic.git
3. 将原始项目添加有项目的upstream
> git remote add upstream https://github.com/think-view/halo-theme-fantastic
查看项目情况
> git remote -v
origin https://github.com/lyk2655/halo-theme-fantastic.git (fetch)
origin https://github.com/lyk2655/halo-theme-fantastic.git (push)
upstream https://github.com/think-view/halo-theme-fantastic (fetch)
upstream https://github.com/think-view/halo-theme-fantastic (push)
4.创建新的分支
> git checkout -b fix-archives-img-href
Switched to a new branch 'fix-archives-img-href'
5. 修改并提交代码
修改 archives.ftl 文件, add, commit后将改动提交到自己GitHub上的项目,也就是 origin 端项目
> git add archives.ftl
> git commit -m "fix archives img and href url"
> git push origin fix-archives-img-href
这样这个改动就会到自己GitHub的项目里了
6. 向原始项目提交 pull request
提交代码后,自己项目的页面会出现一个 Compare & pull request
的提示
点击绿色的Compare & pull request
按钮,注意base 端选择 原始项目的 master分支, head 端选择自己项目的新分支。
然后写好说明,点击提交就可以了,这样就可以慢慢的等待原始项目的开发者审核你的pull request, 如果通过的话,我们的代码改动就会被合进原始项目里了。
虽然这次只是改动了一点点代码,但能够有机会走一次完整的 pull request 请求,也是很开心,尤其是自己比较感兴趣的一个项目。
慢慢的等候,期待原始项目的大佬能通过我的pull request~
参考链接:
蘑菇博客
halo-theme-fantastic 主题
creating-a-pull-request 教程