启用 JavaScript 和 Cookie 以继续。
启用 JavaScript 和 Cookie 以继续。
## Quine:艺术、代码与生成式启示
当作者决定重返自由职业时,一次偶然的机会与 Larva Labs 的 John Watkinson 相遇,促成了一个引人入胜的项目:为他们新的生成艺术系列“Quine”创作动画。Quine 独特地融合了艺术和代码;每一件作品都包含视觉上引人注目的像素艺术,其中*包含*可运行的代码。运行这段代码会生成 quine 序列的下一个迭代,其变体由它们的“quinity”(生成循环的长度)定义。更稀有的“完美”和“伪”Quine 表现出独特的行为,要么无尽地自我复制,要么生成无限的序列。
挑战在于以视觉方式解释这个复杂的概念。作者利用 SVG 和 Canvas 的专业知识,选择使用模拟打印和扫描过程的动画。初步性能测试表明,Canvas 更适合流畅地动画化密集的 quine SVG。最终的动画展示了一个 quine “打印”它的代码,然后“扫描”它以显示其可读性,最终生成一系列 quine。
这段动画被用于 Larva Labs 的公告,后来扩展成一个循环视频,在巴塞尔艺术展上展出,甚至利用 quine 的代码来生成后续动画。这个项目证明了重返创意编码的价值,并完美地重新进入独立工作状态。
欢迎来到基因猜猜!这是今天的蛋白质。你能猜出哪个基因制造了它吗?你会看到覆盖有重要提示的隐藏栏。点击隐藏栏以显示下方的提示。使用搜索栏查找你喜欢的基因。将其作为你的第一次猜测提交。反馈卡 你的每次猜测都会显示为一张反馈卡。反馈条百分比显示你有多接近正确答案。寻找高亮的属性。它们与你的目标相符。揭示提示 移除一个隐藏栏需要消耗1个提示。每次猜测你会获得+1个提示。当提示过于明显时,栏会保持锁定状态。只需尝试解锁另一个即可。游戏结束前你可以进行10次猜测。随意尝试!
这段代码演示了如何使用“zero-trust-api.p.rapidapi.com”端点重建图像,并在多种编程语言中展示。核心功能涉及通过POST请求将图像文件(例如JPG)发送到API,包括API密钥和host头部进行身份验证。 提供了JavaScript(浏览器和Node.js)、Python、Java、React和cURL的实现。每个版本都读取输入图像,准备带有适当头部(指定内容类型)的请求,将图像数据发送到API,然后保存或显示重建的图像(通常为PNG)。 API似乎处理图像并返回重建的版本,然后将其写入文件或在浏览器中显示。所有示例都遵循共同模式:读取图像、POST到API以及保存/显示结果,并以“✅ Image rebuilt!”消息确认重建成功。
Imgur 暂时超出容量。请稍后再试。
## ClickHouse 与 Postgres CDC:年度回顾
在过去一年里,ClickHouse Cloud 的 Postgres CDC 连接器(基于开源 PeerDB,PeerDB 于 2024 年被收购)已从私有预览快速发展到 GA,目前已为超过 400 家客户提供服务,每月复制超过 200TB 的数据。核心目标是无缝集成 Postgres(用于事务)和 ClickHouse(用于分析),让客户能够利用每个数据库的优势。
一个关键的决定是保持 PeerDB 作为独立、模块化的组件,从而促进更快的开发并使更广泛的开源社区受益。这一策略被证明是成功的,PeerDB 的使用量显著增长。主要用例包括:**实时客户分析**(将分析工作负载从紧张的 Postgres 实例中卸载)和 **数据仓库**(将 Postgres 数据与其他来源在 ClickHouse 中整合)。
最近的增强功能侧重于稳定性和易用性,包括改进的重新连接处理、产品内验证以及更快的历史数据回填。未来的开发将解决数据建模开销、平台级功能(如 Terraform 支持)以及与 Postgres 逻辑复制的更深入集成,以提高可扩展性和性能。团队致力于不断改进体验,最终将 Postgres 和 ClickHouse 统一成一个更具凝聚力的堆栈。
## TurboDiffusion:加速视频生成 TurboDiffusion是一个旨在大幅加速视频生成的框架,利用扩散模型在单个RTX 5090 GPU上实现**100-200倍**的加速,同时保持视频质量。它利用**SageAttention & SLA(稀疏线性注意力)**进行高效的注意力计算,并利用**rCM**进行时间步蒸馏。 该仓库提供了**文本到视频 (T2V)** 和 **图像到视频 (I2V)** 模型(Wan2.1 & Wan2.2)的实现,支持高达720p的分辨率。安装方式是通过`pip`或克隆GitHub仓库。针对不同内存的GPU,提供了优化的检查点(针对RTX 4090/5090量化,针对>40GB GPU未量化)。 主要特性包括白盒SLA训练、与ComfyUI集成,以及对FSDP2、Ulysses CP和SAC的支持。该项目正在积极开发中,不断改进,并欢迎社区贡献。 **为使用该框架的用户提供了引用信息以及论文、代码和相关出版物(SageAttention、SLA、rCM)的链接。**
西方政府日益将目光投向VPN等在线隐私工具,试图加强对互联网的控制。这一趋势始于丹麦试图推动欧盟的“聊天控制法”——最初提议扫描所有私人通讯,包括加密信息,以打击儿童性虐待内容。尽管在反对声中法案被大幅修改,但修订后的法案仍然引发了对隐私和潜在滥用权力的担忧,实际上禁止匿名通讯并限制儿童的访问。 随后,丹麦提议禁止VPN本身,表面上是为了打击盗版,引发了广泛批评,称其具有“极权主义色彩”。在公众强烈反对后,该提议最终被撤回。类似的措施也在其他地方出现:英国正在考虑在实施在线年龄验证后禁止未成年人使用VPN,而澳大利亚已经推出了严格的年龄验证法律,可能依赖于数字身份。 这些努力凸显了各国政府寻求控制在线活动的更广泛趋势,通常以安全问题为由。然而,批评人士警告说,这些措施有损基本权利的风险,并且可能被轻易规避,同时可能依赖于安全性存疑的VPN提供商——甚至与外国情报机构有关联。有观点认为,维护在线隐私将需要公众持续而强烈的抵制。
## Tachyon:Python 统计分析器
Tachyon 是一个用于 Python 的统计分析器,它使用周期性栈采样来分析程序行为,开销几乎为零,适用于开发和生产环境。与确定性分析器不同,Tachyon 不会检测代码;它会定期快照调用栈来估计时间花费在哪里。
**工作原理:** Tachyon 在分析会话期间收集数千个样本。样本越多,对每个函数花费时间的估计就越准确。结果是基于样本计数乘以采样间隔的统计估计——更长的持续时间和更快的采样率可以提高准确性。
**主要特点:**
* **非侵入性:** 附加到正在运行的进程,无需更改代码或重启。
* **低开销:** 外部读取进程内存,最大限度地减少对性能的影响。
* **灵活模式:** 提供挂钟时间、CPU、GIL 和异常模式,以进行重点分析。
* **多种输出格式:** 支持 pstats、折叠堆栈(用于火焰图)、火焰图、Gecko(Firefox Profiler)和热图。
* **生产就绪:** 设计用于在实时系统中运行,对影响最小。
* **Asyncio 支持:** 包含一个异步感知模式,可准确分析异步代码。
**用法:** 可以通过命令行使用 `python -m profiling.sampling run script.py` 或 `python -m profiling.sampling attach <PID>` 运行 Tachyon。它最适合识别瓶颈和热点,但不适合精确的调用计数或微基准测试——对于那些,请使用 `profiling.tracing` 或 `timeit`。
这个项目详细介绍了创建一个极简Linux发行版——“终极Linux Shell”的过程,主要使用JavaScript构建。这是一个有趣的探索,旨在了解Linux作为内核与完整操作系统分离的功能,并将其与内核和用户空间紧密集成的系统(如macOS)进行对比。 该项目旨在展示Linux内核与用户软件的接口,通过将JavaScript转译为C并静态链接到musl libc,从而绕过传统的libc依赖。这产生了一个独立的、可执行文件,能够在QEMU虚拟机内作为init进程运行。 该shell包含基本的命令,如`ls`、`cd`、`cat`、`mkdir`、`mount`和`exit`。这是一个理解内核系统调用以及极简系统如何运行的实践练习,灵感来自于对内核稳定性和Linux在操作系统领域独特地位的讨论。作者还链接到一篇之前的文章,提供更深入的关于构建此类微型发行版的见解。
## WiFi-DensePose:保护隐私的实时姿态估计
WiFi-DensePose是一个尖端系统,可在*无需*使用摄像头的情况下进行实时人体姿态估计。它利用标准的WiFi基础设施和信道状态信息(CSI)数据,通过先进的机器学习模型来检测和跟踪最多10个人,延迟低于50毫秒。
主要特点包括隐私优先的设计、多人员跟踪以及针对医疗保健、健身、智能家居和安全领域的特定优化。提供具有身份验证和监控功能的生产级API,以及WebSocket流以用于实时应用程序和全面的分析,例如跌倒检测和活动识别。
该系统与硬件无关,可与常见的WiFi路由器配合使用,并拥有100%的测试覆盖率。通过PyPI和Docker简化安装,并提供全面的文档和命令行界面进行管理。性能基准测试表明具有高精度和可扩展性,并提供GPU加速和性能优化的选项。该项目是开源的(MIT许可证),并欢迎社区贡献。
这似乎是一个语言列表,重复两次。没有需要总结的文本。 本质上,该内容展示了多语种能力,列出了来自世界各地的各种语言——包括使用拉丁文、西里尔文、阿拉伯文和亚洲字符集等不同文字的语言。它突出了人类交流的多样性。 在没有更多上下文或伴随文本的情况下,总结仅限于说明**所提供的内容是一个全面的语言列表**。
这个网站展示了迷人的镶嵌艺术——通过互锁的形状,在没有空隙或重叠的情况下形成重复的图案。该网站受到M.C.埃舍尔作品的启发,展示了各种镶嵌艺术作品集,允许观众通过动画探索单个作品和潜在的网格结构。 除了观看,该网站还鼓励参与!用户甚至可以使用自动互锁的瓷砖*创建*自己的镶嵌图案,并尝试不同的形状和细节。网站还提供了资源来理解镶嵌背后的数学原理,包括关于对称性和分类的教程。 该网站可在所有设备上访问,并围绕这种独特的艺术形式培养社区。重要的是,所有艺术作品均受版权保护,未经艺术家许可不得重复使用。您还可以通过“Tiled.art in 90 seconds”视频快速了解网站概况。
布拉德利·库恩讲述了他作为新诊断糖尿病患者使用连续血糖监测仪(CGM)——特别是雅培公司的FreeStyle Libre Plus的经历。他强调了专有医疗设备令人担忧的现实,以及医疗系统,尤其是在美国,缺乏透明度的问题。 库恩收到了一份可怕的警报,雅培公司召回了与七名患者死亡和超过700人受伤相关的设备,原因是导致血糖读数虚假的错误。他发现自己最近使用过受影响的设备,由于他处于糖尿病早期,侥幸避免了严重伤害。 这一事件凸显了一个更广泛的担忧:闭源医疗软件可能造成的危害。库恩倡导自由和开源软件(FOSS)的好处,以及公开硬件规格,以便进行更广泛的同行评审和提高安全性。虽然他承认FOSS并非万无一失,但他认为它促进了一种更具协作性和问责性的方法。 他对法律障碍表示担忧——特别是雅培公司服务条款中的免责条款——并呼吁进行独立调查和潜在的集体诉讼。库恩正在积极寻找志愿者来逆向工程该设备硬件,并为像Juggluco这样的FOSS替代方案做出贡献。
在开发医疗健康应用“Simple”时,团队旨在通过用智能、注重隐私的系统取代纸质记录和固定电话,来现代化护士-患者随访。一个关键功能是屏蔽电话号码——像Uber和Zomato一样保护患者隐私——但该应用需要*离线*运行,这构成挑战,因为典型的号码屏蔽需要互联网连接。
解决方案?利用DTMF音调——按下电话键盘按钮发出的声音。当护士通过该应用发起呼叫时,它会拨打一个免费电话号码,并将患者ID作为DTMF音调发送出去。像Twilio这样的服务在服务器端解码这些音调,然后将护士连接到正确的患者。
虽然编码需要时间,但这种方法允许离线功能,这对于偏远地区至关重要。该方法利用现有的电信基础设施,并且出人意料地通用——甚至与历史上“电话黑客”有关。该团队还发现了一种潜在的解决方法,可以通过在电话号码后直接输入服务代码来绕过自动电话系统。
## DisplayLink 驱动程序的故事:OpenBSD 对动态世界的适应
基于 Unix 的系统已经发展了 50 多年,迫使操作系统设计者不断适应。一个关键的转变是从固定的硬件配置转变为支持设备连接和断开的动态模型——最初是存储,然后通过 PCMCIA、USB 和 Firewire。这个故事围绕着 2009 年 DisplayLink 的一个小型 USB 显示器带来的挑战,该显示器仅提供 Windows 和 macOS 的二进制驱动程序。
OpenBSD 开发者,由 Marcus Glocker 领导,对该设备进行了逆向工程,并遇到了由于 USB 通信的异步特性而导致性能问题。现有的控制台驱动程序假定同步操作,难以处理 DisplayLink 对频繁小数据传输的需求。
Miod Vallat 主导的解决方案涉及对 `wsdisplay` 系统进行重大修改。它允许驱动程序在过载时发出故障信号,暂停输出并在资源可用时恢复——本质上将显示器视为具有有限 FIFO 缓冲器的串行线路。这需要大量的代码更改和仔细的测试,最终在 OpenBSD 中提交了一个强大的驱动程序。
尽管 DisplayLink 最终发布了一个库,但它缺乏关键的压缩功能。尽管如此,该项目强调了对自适应内核设计的需求,并为先前受限平台上的图形控制台支持铺平了道路。虽然 DisplayLink 设备今天不太常见,但所学到的经验教训继续有益于 OpenBSD 的持续开发。
## MiniMax M2.1:迈向AI原生工作流 MiniMax发布了M2.1,这是对其核心模型的重大更新,专注于提升在现实世界中复杂任务中的性能。在解决了成本和可访问性的M2的基础上,M2.1在多编程语言支持(Rust、Java、Go、C++等)方面表现出色,并在Web和App开发方面有所改进,包括Android和iOS的UI/UX设计。 主要改进包括增强了遵循复杂指令的能力——这对于办公应用至关重要——以及更简洁、高效的响应,降低了token使用量并加快了交互速度。M2.1展现了与流行的编码工具和代理框架的强大兼容性。 基准测试表明,在多语言场景下,M2.1超越了Claude Sonnet 4.5和Gemini 3 Pro,性能接近Claude Opus 4.5。一个新的基准测试VIBE评估了全栈应用程序构建,M2.1在该测试中获得了与Claude Opus 4.5相当的分数。此外,M2.1引入了强大的“数字员工”能力,通过基于文本的网页交互自动化端到端任务。 MiniMax提供两个API版本——M2.1和更快的M2.1-lightning——并具有自动缓存功能,以改善用户体验和成本效益。
## 为金融工作负载选择合适的 Python Docker 镜像
此基准测试比较了 `python:3.14-slim`、`intel/python` 和 `anaconda3` 在数据密集型金融任务(IO、ETL、线性代数、CPU 密集型代码)中的表现。主要发现:**`python:3.14-slim` (~150MB) 是大多数工作负载的最佳默认选择**,它提供快速的容器启动和可比的性能(比大型镜像低 10% 以内)。
**存在例外情况:** `intel/python` 可以在 **Intel CPU** 上为 **密集线性代数**(矩阵运算)提供 **1.1 倍到 2.0 倍的加速**,这得益于 MKL 优化。但是,**MKL 可能会 *降低* AMD 处理器的性能。**
一个实际案例表明,仅仅将 `intel/python` 切换为 `python:3.14-slim`,一个多线程、大量使用 pandas 的批处理作业的 **运行时间减少了 40%**。这表明 Python 3.14 的解释器改进通常优于 MKL 在典型数据操作任务中的优势。
**决策指南:**
* **AMD CPU:** 始终使用 `python:3.14-slim`。
* **Intel CPU:** 除非您的工作负载严重依赖线性代数,否则使用 `python:3.14-slim`,然后考虑 `intel/python`(先进行基准测试!)。
* **需要 conda 包?** 使用 `anaconda3`(接受更大的 3.5GB 镜像)。
**重要注意事项:**
* **线程:** 对于 CPU 密集型任务,使用 `multiprocessing` 来绕过全局解释器锁 (GIL)。
* **Python 版本:** Python 3.14 提供了显著的解释器优化。
* **未来:** 关注自由线程 Python 的发展(Python 3.13+),这可能会进一步有利于较小的镜像。
基准测试代码可在 [github.com/jiripik/finance-python-bench](https://github.com/jiripik/finance-python-bench) 上获取,用于自定义测试。
路易斯安那州的Fibrebond公司,一家数据中心基础设施制造商,被伊顿公司以17亿美元收购,其员工迎来了非凡的结果。首席执行官格雷厄姆·沃克确保了15%的销售额——高达2.4亿美元——分配给其550多名全职员工,尽管他们没有持有公司股权。 这笔款项平均每位员工在五年内获得44.3万美元(长期员工的奖金更高),是对他们历经数十年困难的忠诚的回报。Fibrebond克服了工厂火灾、经济衰退和不确定时期,培养了一种以集体生存为中心的强大协作文化。 沃克强调,这笔奖金是对奉献精神的认可,而非所有权。公司的成功源于向数据中心基础设施的冒险但成功的转型,并受益于疫情时期的需求。他在收购谈判中坚持员工分红,优先考虑他们的福祉,并为他的团队树立了感恩和财务保障的遗产。
股票或共同基金份额的捐赠:您持有超过一年的股票或共同基金份额可以作为极佳的慈善捐赠。 经纪公司:先锋 账户名称:互联网安全研究小组 ISRG账户号码:44865458 DTC号码:0062 税务识别号:46-3344200 如果您正在转让证券,请告知我们[email protected]。您也可以通过电子邮件发送经纪人的授权信。 加密货币捐赠:我们接受BTC、BCH、ETH、DOGE、WBTC以及BitPay支持的所有其他货币。我们能够接受相当于1000美元或以上的捐赠。请通过电子邮件[email protected]索取发票。 捐赠顾问基金:建议从您的礼品基金向互联网安全研究小组(我们的母组织)捐赠。您的100%捐款将用于支持安全和尊重隐私的互联网。
## Dasharo固件事件总结 (DSB-001) 2025年10月24日至12月5日期间发生了一起严重事件,影响了Dasharo固件在NovaCustom V540TU和V560TU平台上的运行。由于发布工程错误,使用临时测试密钥签名的固件二进制文件被错误地发布用于关键的“TrustRoot熔断”操作——该过程会将加密密钥永久写入设备的硬件。 在此期间执行此熔断操作的用户,现在他们的系统硬件熔断中被永久编程了不正确的密钥哈希值。这会阻止未来的固件更新,实际上会使设备变砖,因为系统会拒绝任何未用原始且现在无法访问的测试密钥签名的更新。由于硬件熔断的一次性可编程特性,软件恢复是不可能的。 Dasharo对该错误承担全部责任,强调了用户控制安全中固有的风险,即用户执行最终组装步骤。他们为受影响的用户提供硬件更换服务,受影响的用户可以通过集成到Dasharo工具套件 (DTS) 中的脚本来识别。目前正在进行全面的事故后分析,以实施保障措施并防止未来发生,详细信息将公开发布。
如果您是网站访问者:请稍后几分钟重试。如果您是网站所有者:Cloudflare的缓存与您的源服务器之间存在问题。Cloudflare会监控这些错误并自动调查原因。为了支持调查,您可以从您的网络服务器中提取相应的错误日志并提交给我们的支持团队。请包含Ray ID(位于此错误页面的底部)。其他故障排除资源。
启用 JavaScript 和 Cookie 以继续。
谷歌开始推出一项期待已久的特性:更改你的主要 `@gmail.com` 电子邮件地址。 此前,只有使用第三方电子邮件地址的帐户才能做到这一点。 此项更改的详细信息目前在印地语 Google 支持页面上,允许用户切换到具有不同用户名的新的 `@gmail.com` 地址。
原始电子邮件将作为别名保持活跃,继续接收电子邮件并用于登录。 用户可以恢复到旧地址并继续使用它,但 12 个月内无法创建新的 Gmail 帐户或删除新地址。 帐户的地址更改次数限制为三次,总共四个地址。
虽然该功能尚未对所有用户开放,但详细的支持文档表明更广泛的推广即将到来。 该更改将通过“我的帐户”设置进行访问。
## 节目:2025 年终报告
尽管全球气候恶化,科幻短篇小说播客《节目》在 2025 年仍然存续,总下载量超过 100 万次——这一里程碑的喜悦被持续的年度下载量下降所冲淡(2025 年为 14 万次,而 2024 年为 17 万次)。今年发布的正规剧集数量较少(三集:“随机数生成器”、“硬分叉”和“当代立方体理论”),但辅助剧集数量创下纪录,包括为付费支持者提供的访谈系列《解编译节目》。
Patreon 仍然是主要的收入来源(23,135 加元),不断增长的支持者群体(452 位赞助人)抵消了 Apple Podcasts 上的损失。创作者积极鼓励听众通过 Patreon 直接支持节目,理由是 Apple 的高额费用和有限的功能。
观众参与度是重点关注对象,Patreon 的观众建设工具得到改进,并举办了插图比赛和电影保护竞赛等互动活动。调查数据表明,核心听众是 নিয়মিত的广播剧听众,主要位于美国。虽然发现主要依赖 Rusty Quill Network,但创作者也承认了在广播剧领域推广和内容饱和的挑战。
尽管净利润为 27,555 加元,但《节目》仍然是一个副项目,尚未提供全职收入。新听众(一个婴儿!)的到来,激发了对该项目的持续投入,并有几个新故事正在开发中。
该资源提供一个大型、手动整理的黑名单(1000+个网站),旨在从Google、DuckDuckGo和Bing的图片搜索结果中移除AI生成的内容。它兼容uBlock Origin、uBlacklist、Pi-hole和AdGuard。 安装很简单:uBlock Origin和uBlacklist(仅Chrome)提供一键导入链接,或者所有平台都可以通过URL手动导入。移动用户(iOS/iPadOS via Safari & Android)可以使用uBlacklist。该列表每天自动更新,并提供强制更新选项。 除了主列表外,还有一个“核”列表,针对混合AI/真实内容的网站(如艺术平台)。用户还可以为特定网站创建白名单,并根据关键词过滤结果。欢迎通过pull requests或issue提交来贡献列表。 该项目还链接到相关资源,如反AI搜索技巧和其他有用的黑名单。
## URLPattern 概要 `URLPattern` 接口允许使用灵活的模式匹配 URL,灵感来自 `path-to-regexp` 等库。模式可以包含字面字符串、通配符 (`*`)、命名组 (`:id`)、可选/重复组 (`?`, `+`, `*`) 和正则表达式 (`(\\d+)`)。正则表达式组由括号表示,可能受某些 API 限制;`hasRegExpGroups` 指示它们的使用。 主要特性包括: * **分组:** 提取 URL 的部分,命名或未命名(按数字索引)。 * **通配符:** 匹配任何字符。 * **正则表达式:** 在组内启用复杂的匹配。 * **修饰符:** 控制组的重复 (`+`, `*`) 和可选性 (`?`)。 * **组分隔符:** `{}` 允许将修饰符应用于固定文本。 * **标准化:** 模式被标准化以保持一致性(例如,百分比编码)。 * **基本 URL:** 用于解析相对 URL 并继承组件。 * **大小写不敏感:** 可以通过 `ignoreCase` 选项启用。 `URLPattern` 提供 `test()` 方法进行布尔匹配,以及 `exec()` 方法来检索匹配的组和输入字符串。它是一个强大的路由和 URL 操作工具,提供了一种类似于 Ruby on Rails 和 Express.js 等框架的标准化方法。提供了一个 polyfill 以获得更广泛的浏览器兼容性。
This appears to be corrupted data, likely from a PDF file. It does not contain readable text that can be translated into Chinese. It's a jumble of characters and symbols resulting from a decoding error.
这系列演讲和文章关注技术、伦理和社会影响的关键交汇点。一个核心主题是数字工具——特别是人工智能、监控技术和数据收集——被用于专制控制和社会不公的可能性。 许多报告强调了对政府过度干预的担忧,包括警方获取个人数据(Cellebrite、间谍软件诉讼)、生物识别数据库以及欧盟数字权利的侵蚀。几位演讲者讨论了在线右翼极端主义的兴起(“Eso-Nazis”、回音室)以及算法偏见在战争和预测性警务等领域的危险。 除了监控之外,主题还包括互联网的“恶化”、数字身份系统的影响以及对数字包容性和可访问性的需求。 呼吁抵抗和主动干预的声音突出,倡导透明度、数据保护、开源开发以及反对数据保留。 这系列内容敦促人们对技术进行批判性思考,并致力于建设一个更加公正和公平的数字未来。
这个git别名`archive-branch`简化了归档旧分支的过程,将其转换为标签。它有效地“隐藏”了分支,使其不出现在常规工具中,同时保留了其历史记录。 该别名的工作原理是切换到`main`,将指定分支(或如果没有指定则为当前分支)标记为`archive/<branch_name>`,然后删除原始分支。重要的是,它利用了一个bash函数和一个`git switch`“提示”来实现shell补全——允许在别名中直接补全分支名称。 然而,此补全功能*需要*官方git补全脚本,而不是默认的zsh补全。使用Xcode的git的macOS用户可能需要创建补全脚本的符号链接,并调整他们的`.zshrc`以正确加载它,确保同时加载`git-completion.zsh`和`git-completion.bash`。最初的想法源自一个Reddit帖子。