Рейтинг:1

Использование git и github для совместного использования содержимого папки, которое необходимо обновлять ежедневно

флаг ng

У меня есть папка, которой я хочу поделиться с другими, содержимое папки должно обновляться ежедневно: некоторые файлы будут изменены, некоторые удалены, некоторые добавлены. я хотел бы использовать Гитхаб для этого и создайте cronjob, который должен обрабатывать обновления репозитория. Какого рода git-команды мне нужно использовать, если я всегда хочу иметь точную копию локальной папки в моем репозитории git.

Это код, который я планирую использовать, но у меня есть сомнения по поводу локально удаленных файлов (покрывает ли он их или нет)…:

компакт-диск ~/моя папка
git инициировать
git добавить .
git commit -a -m "$current_date"

Спасибо.

Рейтинг:0
флаг jp

Этот код почти подходит для первоначальной настройки вашего репозитория, вам нужно добавить еще несколько шагов в конец:

ветка git -M главная
git remote add origin [email protected]:username/repository-name.git # Отредактируйте это, чтобы оно соответствовало вашему репозиторию Github
git push -u происхождение основной

Первая строка, которую я добавил, задает ветку на git (ветвь по умолчанию на Github — главный), вторая строка задает удаленный источник, а последняя строка отправляет вашу папку на Github.

Сценарий, который вы вызываете из crontab, должен выглядеть так:

компакт-диск ~/моя папка
git добавить .
git commit -a -m "$current_date"
git push

Предполагая, что вы назвали это загрузить-script.sh, это запись crontab, которая будет запускаться каждую минуту (самый быстрый интервал, который позволяет crontab) без вывода:

* * * * * ~/upload-script.sh >/dev/null 2>&1

Я не уверен, что вы можете ограничить скорость Github для этого, поэтому вам может потребоваться уменьшить скорость push-уведомлений. Вы можете создавать записи crontab, используя генератор кронтаб если это так.

И для справки, вот документация Github о том, как настроить удаленный репозиторий (полезно для отладки проблем с git): https://docs.github.com/en/get-started/using-git/pushing-commits-to-a-remote-repository

Надеюсь это поможет :)

Ra Spirit avatar
флаг ng
Большое спасибо за ваш общий ответ. Я заметил, что папка .git занимает много места. Я провел небольшое исследование и нашел еще 2 команды для уменьшения размера папки: `git fsck` `git подрезать` Мой вопрос в том, должен ли я их использовать? как я уже сказал, мне не нужна история файлов. Также было бы замечательно, если бы был способ получить репозиторий без папки .git или с минимальным размером. Конечно, я могу удалить папку после, но меня беспокоит пропускная способность, которую я хотел бы сохранить. Спасибо!
Ra Spirit avatar
флаг ng
Есть ли смысл делать такой код: `cd ~/моя папка; git фск; git подрезать; git добавить .; git commit -a -m "$current_date"; git push`'
Pranav Sharma avatar
флаг jp
Честно говоря, если вам не нужна история, то есть методы получше, чем Git (например, облачное хранилище, сервисы localexpose), но ваши изменения должны свести размер .git к минимуму. Кроме того, Git не загружает весь репозиторий каждый раз, когда вы нажимаете, а только файлы, которые изменились с момента последнего нажатия (см. этот вопрос на SO: https://stackoverflow.com/questions/26005031/what-does-git -нажми-сделай-точно).
Pranav Sharma avatar
флаг jp
Также я заметил, что вы довольно новичок в SE, так что добро пожаловать :), если мой ответ соответствует тому, что вам нужно, пожалуйста, примите его, чтобы другие люди могли видеть, что вам помогло.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.