从Git仓库中删除某个包含敏感信息的文件

使用 Git 做代码版本控制时,有时候会不小心把某些敏感的文件提交到 Git 仓库,可能过后很久才发现。或者是以前提交的文件,现在发现不合适,需要从仓库中清理。 如果但是删除文件,然后提交的话,还是可以从仓库的历史记录中找出这个文件,这个问题就比较严重了。

Go的泛型

Go 泛型的草案已经基本定型了,与其他语言最大的不同应该就是 Go 的泛型利用 Interface 做 Constraint,可以说是与现有的 Interface 充分结合,之前的草案本来要引入新的关键字 contracts 在这次改动后被现有的 interface 代替,这使得 Interface 的概念更像 Rust 的 trait(实际上 Go 的泛型概念也与 Rust 相似),不过 Go

使用sudo命令时不需要密码

有时候我们只需要执行一条root权限的命令也要su到root,是不是有些不方便?这时可以用sudo代替。默认新建的用户不在sudo组,需要编辑/etc/sudoers文件将用户加入,该文件只能使用visudo命令。

Go 1.18 release 了

  • go
Go 1.18 是一个包含大量新功能的版本,同时不仅改善了性能,也对语言本身做了有史以来最大的改变。毫不夸张地说,Go 1.18 的部分设计十多年前,在第一次发布 Go 时就开始了构思(例如泛型,最早的时候在2009年R

Go 官方出品泛型教程:在Go1.18beta2中如何开始使用泛型

这个教程介绍了Go泛型的基础概念。 通过泛型,你可以声明并使用函数或者是类型,那些用于调用代码时参数需要兼容多个不同类型的情况。在这个教程里,你会声明两个普通的函数,然后复制一份相同的逻辑到一个泛型的方法里。