许多时候,我们在Github上Fork代码,不是为了提交pull request,只是想做个备份。例如V2ray客户端、trojan客户端中的客户端代码,因为众所周知的原因,不知哪天就被和谐了,因此值得Fork做个备份。
Fork代码简单,但如何保持在最新版代码是一个麻烦事。许多人Fork后再也没管,因此代码一直停留在Fork时的版本。
本文介绍使用pull app保持Fork代码在最新状态。
手动更新Fork代码
使用pull app之前,先介绍一下手动同步Fork代码的操作步骤。Github给出的官方同步操作说明如下:
# 首先你需要设置原代码库为upstream(upstream可以改成其他名字),只需设置一次即可
git remote add upstream https:/xxxx
# 获取原代码库最新代码
git fetch upstream
# 切换到合并分支(master),一般来说这一步可以省略
git checkout master
# 合并上游代码
git merget upstream/master
# 更新到github
git push
一般情况下,你本地不会有更新,直接pull/push就完事:
# 直接执行fast-forward
git pull upstream
git push
可以看到,同步代码很简单。但要保持代码同步,则需要对每个Fork的库经常做上述操作。这是非常繁琐的,完全可以使用自动化避免重复性操作。
使用pull app保持Fork代码在最新状态
pull app 是由 wei 开发的第三方Github app,它的作用非常简单:保持你的Fork在最新状态。
pull app的安装和使用也很简单:
1. 打开app页面 https://github.com/apps/pull;
3. 在选项页面,使用默认的“All repositories”即可,然后点击绿色的“install”按钮:
简单三步,pull app就安装好了。接下来pull app会每天定时帮你更新代码库,使你fork的代码始终是最新版的。
一个小问题
如果你Fork并watch过某个代码库,每次pull app更新代码后都会发邮件通知你。对于更新比较频繁的代码库,提醒会比较烦人:
如果你不想频繁被打扰,进入Github,unwatch这个代码库就好了。
需要说明的是,Fork库默认为非watch状态,因此pull app会默默帮我们更新代码,但没有邮件打扰,真的非常棒。
大佬,我想请教一下,朋友给我分享了一个V2ray的URL,我复制到ios的SSR里面的订阅里连接可以正常翻墙,可是换成电脑版的V2RAY添加订阅以后无法翻墙,这是什么原因呢?
v2ray不支持ssr