Как найти файлы, не отслеживаемые git, а затем rsync эти файлы? - PullRequest
0 голосов
/ 04 января 2019

У меня система centos 7.

Я использую git ls-files для получения файлов, отслеживаемых git.
И использую git lfs ls-files для получения файлов, отслеживаемых git-lfs.

Но в моем каталоге разработки есть папки и файлы, которые не должны отслеживаться программным обеспечением для контроля версий, например userdata, upload/avatar.
Предположим, что stackoverflow - это мой сайт.avatar. Эти файлы часто меняются и не должны отслеживаться git.

Эти файлы необходимы при развертывании на производственном сервере, тогда я подумал:
Git имеет хорошую функцию, такую ​​как git clean -f -d, но я нене хочу удалять просто список этих файлов.
rsync -aH not_tracked_files root@production server:/home/mywebsite.

Я не знаю, как получить not_tracked_files в скрипте rsync.

1 Ответ

0 голосов
/ 04 января 2019

Как найти файлы, не отслеживаемые git

Они должны быть сохранены в другой ссылке (кроме вашего репозитория Git) и извлечены во время процесса развертывания (который включает в себя rsync)

Это может быть частный сервер Nexus, это может быть личная общая папка, удаленный диск (onedrive / Google drive, AWS ...) или даже хранилище, но это не должен быть ваш текущий Gitrepo.

Сложность заключается в версии не «не отслеживаемых» файлов Git: если они не меняются часто, их можно просто статически сохранить один раз и извлекать всякий раз, когда вы выполняете развертывание.
Если они регулярно меняются, вам нужно отследить в Git-репозитории ссылку на правильную версию этих файлов (немного похоже на lfs для ваших больших файлов, которые тоже хранятся в другом месте)


Предположим, что stackoverflow - это мой сайт. Такие пользователи, как вы и я, будут загружать аватары. Эти файлы часто изменяются и не должны отслеживаться git.

Эти типы артефактов особенные вчто вам, как правило, нужна только их последняя версия.
Они могут управляться в независимой референции.GitHub, например, управляет своим аватаром через собственный (исторически) сервис gravatar.com.

Это означает, что вы должны развернуть:

  • ссылкак аватару
  • - программе, способной после развертывания извлечь аватары из их ссылочных и скопировать / обновить их на рабочем сервере при необходимости.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...