Repolode
simulot

simulot/immich-go

一款用 Go 编写的命令行工具,可将照片集(包括 Google Photos Takeout 归档)上传到自托管的 Immich 服务器,无需 Node.js。

可替代:Google Photos

Star
7,065
Fork
273
未关闭 Issue
272
最近提交
前天

这是什么?

Immich-go 是一款命令行工具,用于将大量照片迁移到自托管的 Immich 服务器。它是官方 immich-cli 的替代方案,以单个二进制文件分发,运行时不需要 Node.js 或 Docker。

工具提供多个上传命令,覆盖本地文件夹、Google Photos Takeout 归档、iCloud 导出、Picasa 目录、ZIP 压缩包以及其他 Immich 服务器等来源。其中 Google Photos 命令会将照片与对应的 JSON 元数据匹配,以还原相册、描述和位置信息;其他命令可根据目录结构创建相册,读取 XMP 边车文件,并将 RAW+JPEG 或连拍照片合并为堆叠。

工具会检测重复文件以避免重复上传,默认跳过缩略图目录、.DS_Store 等系统杂项文件,也支持通过自定义规则排除文件。项目兼容 Immich V2 和 V3,可在 Windows、macOS、Linux 和 FreeBSD 上运行。

核心功能

  • 01支持从本地文件夹、Google Photos Takeout、iCloud 导出、Picasa 目录和 ZIP 压缩包上传
  • 02可在 Immich 服务器之间按条件筛选并迁移资源
  • 03保留来源中的相册、标签、描述和位置信息
  • 04自动检测重复文件,并将 RAW+JPEG 和连拍照片堆叠
  • 05以单个二进制文件发布,无需 Node.js 或 Docker

适用场景

  • 将 Google Photos 图库迁移到自托管的 Immich 服务器
  • 把 iCloud 照片导出数据导入 Immich
  • 在两个 Immich 实例之间迁移资源
  • 从 NAS 或硬盘批量上传大型本地照片归档

快速上手

  1. 1

    从 GitHub 发布页面下载适用于你系统的预编译二进制文件

  2. 2

    从本地文件夹上传照片

    immich-go upload from-folder --server=http://your-ip:2283 --api-key=your-api-key /path/to/your/photos
  3. 3

    上传 Google Photos Takeout 备份

    immich-go upload from-google-photos --server=http://your-ip:2283 --api-key=your-api-key /path/to/takeout-*.zip

使用前须知

  • 作者称其为早期版本,尚未经过充分测试。
  • 需要运行中的 Immich 服务器以及具有相应权限的 API 密钥。
  • 采用 AGPL-3.0 许可证,这是一种具有网络使用义务的 Copyleft 许可证。

标签

常见问题

immich-go 是什么?
一款用 Go 编写的命令行工具,可将照片集(包括 Google Photos Takeout 归档)上传到自托管的 Immich 服务器,无需 Node.js。 Immich-go 是一款命令行工具,用于将大量照片迁移到自托管的 Immich 服务器。它是官方 immich-cli 的替代方案,以单个二进制文件分发,运行时不需要 Node.js 或 Docker。
immich-go 可以免费使用吗?用的什么许可证?
immich-go 以 AGPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
immich-go 还在维护吗?
活跃维护中。immich-go 最近一次提交是在 2026年10月18日。
immich-go 适合用来做什么?
将 Google Photos 图库迁移到自托管的 Immich 服务器 把 iCloud 照片导出数据导入 Immich 在两个 Immich 实例之间迁移资源 从 NAS 或硬盘批量上传大型本地照片归档
immich-go 怎么安装和运行?
从 GitHub 发布页面下载适用于你系统的预编译二进制文件 从本地文件夹上传照片: immich-go upload from-folder --server=http://your-ip:2283 --api-key=your-api-key /path/to/your/photos 上传 Google Photos Takeout 备份: immich-go upload from-google-photos --server=http://your-ip:2283 --api-key=your-api-key /path/to/takeout-*.zip
在哪里获取 immich-go?
源代码和安装说明在 GitHub 上:https://github.com/simulot/immich-go

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目