Git
功能强大, 有时候我们会涉及到需要修改已经提交的记录, 可以分为两种情况:
一种是修改上次提交的代码, 这个很简单, 使用 git commit --amend
就可以了.
另一种种情况是需要修改之前某个提交而非上次的提交, 这个稍微复杂一点:
Git
功能强大, 有时候我们会涉及到需要修改已经提交的记录, 可以分为两种情况:
一种是修改上次提交的代码, 这个很简单, 使用 git commit --amend
就可以了.
另一种种情况是需要修改之前某个提交而非上次的提交, 这个稍微复杂一点:
今天在构建一个 OpenVPN Access Server
的 Docker
镜像, 由于 Dockerfile
中需要执行下面两个命令:
1 | yum -y install https://as-repository.openvpn.net/as-repo-centos7.rpm |
但这个 *.openvpn.net
的域名早已经被和谐了, 正常情况在我大天朝根本访问不了, 必须你懂得.
WireGuard 的核心是一个称为Cryptokey Routing的概念,它的工作原理是将公钥与隧道内允许的隧道 IP 地址列表相关联。每个网络接口都有一个私钥和一个对等点列表。每个对等点都有一个公钥。公钥短而简单,供对等方用来相互验证。它们可以通过任何带外方法传递以在配置文件中使用,类似于如何将其 SSH 公钥发送给朋友以访问 shell 服务器。
1 | $ uname -a |
CI 在编译项目时报错如下:
1 | 10:09:17 + ./gradlew --refresh-dependencies assembleRelease test --parallel --no-daemon |
目测是由于CI环境中这个 gradlew
脚本没有权限导致的.
并且尝试发现即便在本地使用 chmod
给这个文件加上运行权限, 也没法提交这个 "变化", Git
根本检测不到这个动作.
解决问题的关键是让 Git
把脚本权限一起 commit
并且 push
到服务器.
经过翻阅相关文档发现可以使用命令让 Git
知道某个文件需要更新权限, 如下:
1 | git update-index --chmod=+x gradlew |
命令需要在 git add
之后使用; 也可以在 git commit
之后使用, 但此时需要将权限修改的动作一并提交(可以使用 git commit --amend
修改已经已经提交的代码)再推送到服务器. 注意 gradlew
是仓库中脚本路径, 请根据实际情况调整.
备忘日记...
后记:
由于 2.9.x 以上版本由于使用了现已支持2.10.x版本~!Python3
编写, 生成的库文件格式已变化, 本补丁无法处理, 本补丁目前最高支持 2.8.8 版本!
本人家里使用了运行了一台服务器, 为了方便远程管理, 最近在 Docker
中用 OpenVPN Access Server
跑了一个 OpenVPN
服务器, 但是想试试这个东西的最大负载, 怎奈免费版本的 OpenVPN Access Server
只允许两个连接, 本着孜孜不倦的精神为了能够深入研究一下于是上网冲浪一番.
在网上博览群文之后发现流行的爆破补丁都是针对 2.5.0
版本的, 直接拿来用肯定是不行的, 经过分析发现 OpenVPN Access Server
的作者对盗版这个事情并不是很在意, 从 2.5.0
到 2.10.x
, 对于授权这款的代码基本是没改过的, 所以在结合网络上面其他人的博文搞了一番并且成功了之后, 特别在这里记录一下.
截止到我写这篇文字的时候最新的版本已经是
2.10.x
,但是由于我家里的机器用, 我这也是采用的最新版Docker
部署2.8.7
的时候会跑不起来所以用的2.8.0
2.10.x
.
跑不起来的原因是: https://github.com/linuxserver/docker-openvpn-as/issues/108
我更新这个文章的时候已经是自己构建 Docker 镜像, 架梯子下载的, 不会出现下载不下来的情况了!
最近在做一个 Flutter 2.0 for Web
的项目, 在项目打开第一次运行的时候, 总是要等很久才能看到效果.
经过一番研究发现是 Flutter
使用的一个渲染引擎 Canvaskit
下载太慢导致的.