Примечание: я новичок в работе с Linux, но я кратко исследовал команду rsync
и я почти уверен, что это то, что я буду использовать.К сожалению, у этих команд есть много разных опций, и я немного запутался, как использовать их в моей конкретной ситуации (обрисовано в общих чертах ниже).
Ситуация: у меня есть два каталога, один с базовым набором файлов, которые были загружены из репозитория (я не хочу их изменять), а другой - с рабочей копией того же репо. Что я ищу, так это команда, которая сравнивает мою рабочую копию репо со статическим репо, чтобы увидеть, есть ли какие-либо изменения между ними. Если есть изменение, только измененные файлы будут перемещены в другой каталог (специально для резервных копий). Другое ограничение заключается в том, что я хочу сохранить структуру каталогов рабочей копии (см. Пример ниже).
Пример:
Статическое Репо:
/src
code1.java
code2.java
/tests
test1.java
Рабочая Репо:
/src
code1.java
code2.java (modified)
/tests
test1.java
test2.java (added)
Каталог резервных копий:
/src
code2.java
/tests
test2.java
Первоначально статический репо и рабочий репо были бы одинаковыми, а каталог резервных копий был бы пустым. Как только я внесу изменения в Рабочее Репо, я смогу выполнить команду, которую ищу, и Каталог резервных копий будет заполнен соответствующим образом (только с новыми / измененными файлами / каталогами).
Существует ли такая команда?