如何将 AWS S3 上的更改(最终在 AWS EFS 上)同步回 Github 存储库?

How do I sync changes on AWS S3 (ultimately on AWS EFS) back into a Github repository?

我使用 Github 操作将我的 git 存储库的子文件夹之一(包括 < 200 个非常小的 MD 和 YAML 文件)同步到 AWS S3。然后,我使用 AWS Lambda 进一步将此 S3 存储桶与 AWS EFS 同步。

如何将 S3(或更好 - EFS)存储桶与 added/changed/deleted 文件同步回我在 Github 上的 git 存储库?

我还没想好实现这一目标的最佳方法。

你能把我推向正确的方向吗?

P.S。我对 git 不是很精通,整个实现有点超出我的能力范围。 :-)

如果您可以在安装 AWS EFS 后将 Git 存储库克隆到同一个 EC2 实例上,您可以执行以下操作:

cd /path/to/cloned/git/repository
git --work-tree=/path/to/mounted/EFS add .

这将检测来自 EFS 的 added/modified/deleted 更改并将这些更改导入您克隆的 Git 存储库。
从那里,您可以提交和推送。

@vonc,谢谢你的提示,它让我朝着正确的方向前进。

我最终这样做了,解决了我的最终目标,即通过GIT管理EFS。我完全可以跳过 S3 / Lambda。

第 1 步:sudo mount -t efs -o tls MYFILESYSTEMID:/ efs

第 2 步:cd efs

第 3 步:git clone --depth 1 --no-checkout --filter=blob:none git@github.com:user/repo

第 4 步:cd repo

第 5 步:git sparse-checkout set subdirectory

第 6 步:git read-tree -mu HEAD

从现在开始,我可以push/pull更改这个特定的子目录。