AprilNEA‘s Tech Channel
79 subscribers
14 photos
1 video
40 links
Download Telegram
#Git #GUI #可视化 #开源

Gitbutler 开源 跨端(by Tauri)
https://gitbutler.com/

总结一下其他 Git GUI Client
Tower: MacOS only, 好,但闭源且贵
GitKraken: 跨端,体验一般
Sourcetree: 跨端,体验一般
Forwarded from Reorx’s Forge
https://stacking.dev/

Stacking 是一种 Git 方法论,它的核心思想是让 PR 代替 commit 成为 code review 流程的最小单元。在一个 "Stack" 中,多个 PR 串联在一起相互依赖。这乍一看不过是把传统 PR 中的 commits 变成了 PRs,但优点在于,Stack 中的每个 PR 都可以更加方便地进行测试、审阅、合并、回退。

日常的开发任务通常需要前后端同时进行,在一个包含前端和后端的 monorepo 中,传统的 PR 会将前端、后端、API 定义、文档等多种改变全部囊括在内,常常使得 PR 的内容量巨大,难以灵活处理。而在 Stacking 方式下,前后端等不同领域的改变会拆分成多个 PR,使得 review 工作能够分阶段进行,更细粒度地进行 rebase, merge 等操作。

Stacking 本质上是对 Git 指令更高级别的封装和使用,因此它和 Gitflow 一样需要借助特定的工具来完成。 Graphite.dev 是践行 Stacking 理念的一体化工具,包含 CLI、VSCode 扩展、网页多种操作方式,使得团队之间的协作更加便捷。
Forwarded from gledos 的微型博客
系统的任期与退役

20 年前的程序,也许仍运行在一些古董硬件、虚拟机上。因为更换新方案的成本比维护现有方案高,而程序运行状态良好。然而时间越久,更换新系统的代价也就越高。

比如 2004 年,Comair 航空公司的机组调度系统出现故障,导致整个航空公司瘫痪,取消或延误了大量架次航班。造成这个问题的原因,很大程度上,就是没有合理的软件退役制度。

事实上在在 1998 年就已经将机组调度系统标记为了退役,可是之后这个问题被忽略了。因为千年虫问题的优先级更高,并且 911 也影响了航空公司收入,然后就不断被搁置,直到系统瘫痪。

这类没有后续更新的硬件、软件环境的系统,被称作 遗留系统。比如还运行在 Windows XP 的自动取款机,老飞机使用软盘更新数据等等。

所以为了整个系统在未来仍然稳定运行,一开始就应该使用更具可维护性的硬件、软件,并且需要时常检查系统状态,确保系统能够合理退役,并被新组建的系统取代,而不是无限延续系统的任期,直到系统维护难度过高,导致长时间瘫痪。

#杂谈
#React #表单库

React 表单库笔记

1. formik
出品:Vercel社区
问题:
- 不再维护(#3613)
- 大型表单性能不佳

2. formily
出品:阿里社区
- 功能全

3. React Hook Form (RHF)
狐狸锐评:反直觉
- Ref 有一些问题
- 非受控组件

4. @tanstack/form
出品:TanStack 出品先拉黑一半🐶

5. @mantine/form
出品:mantine社区

其他一些新的项目:

6. houseform
狐狸锐评:不好用

7. modularforms
Please open Telegram to view this post
VIEW IN TELEGRAM
#API #环境变量 #安全

Infisical 是开源机密管理平台,团队可以用它来集中 API 密钥、数据库凭证和配置等秘密。

对.env使用版本控制有非常大的风险,有些团队也会开一个文档来人工保持同步。Infisical这种集中式的管理虽然也会引入单点漏洞的风险,但也带来了多端同步的好处(包括但不限于生产、开发和CI/CD等环境)

https://github.com/Infisical/infisical

source
程序猫!
#Telegram
https://github.com/overtake/TelegramSwift/issues/1060
由于这个 Bug 的缘故,看着 Surge Dashboard 里一大堆莫名其妙的请求,还是决定放弃 Telegram Swift 了。看了一下 Telegram Web 有 A,K,Z 三个版本,个个都卷的不行,有一个甚至魔改了 React。PWA 需要我打开 Chrome,所以挑了一个可以用 Electron 打包的 A 版本,使用体验非常不错,有些地方甚至超越 Native,顺便规避掉了 Native 上一些奇怪的中文 Bug.

🥇 Telegram Web A: https://web.telegram.org/a Github
Telegram Web K: https://web.telegram.org/k Github
Telegram Web Z: https://web.telegram.org/z Github