首页 > 解决方案 > 通过 git 在 repo 和服务器之间自动同步,忽略但不从源中删除 .gitignore 中的文件

问题描述

我想以稍微复杂的设置从 GitHub 存储库中推送和拉取。

CMS/服务器 ⇄ GitHub ⇄ 翻译服务

我正在使用一个平面文件 CMS,它将内容存储为.txt文件,每种语言一个:*.en.txt, *.de.txt, *.es.txt. 它还将多媒体文件存储在相同的目录中,*.png, .mp4,*.jpg等。

.gitignore从 repo 中排除了所有媒体文件,因为它们与翻译服务无关。

通过 CMS 进行更改时,需要将*.txt文件推送到 GitHub 存储库。翻译服务每 24 小时读取一次*.en.txt文件并将其他语言文件 ( *.en.txt, *.de.txt, *.es.txt) 存入/更新一次回存储库。然后这些需要由服务器拉回 CMS,同时不删除不在 repo 中的文件,如多媒体文件。

我想编写脚本并自动执行服务器/CMS 和 GitHub 存储库之间的推/拉过程,以确保在从存储库中获取/拉取时不会从服务器/CMS 中删除媒体文件,即使它们不在回购。

我目前正在手动处理此过程。有人可以概述一下可以用来将这种关系设置为自动化的方法吗?

如果您需要更多信息,请告诉我。

标签: gitubuntugithubversion-control

解决方案


推荐阅读