У меня есть существующее исходное дерево с набором подкаталогов и тысяч исходных файлов. У меня есть новое исходное дерево, где некоторые файлы были обновлены и некоторые новые добавленные файлы/каталоги.
Существующее исходное дерево имеет набор скрытых подкаталогов (.git), в котором испытывает недостаток новое исходное дерево.
Я ищу путь ко всем обновленным и новым файлам для нахождения их пути от нового исходного дерева до существующего. Я не возражаю, чтобы подобные файлы были скопированы также, потому что это не будет иметь никакого отрицательного эффекта.
Первой вещью, которая приходит на ум, является rsync:
rsync -va /path/to/new/tree/ /path/to/existing/tree
Запаздывающая наклонная черта на первом пути жизненно важна. Без него, новое tree
папка будет создана под /path/to/existing/tree
, создание пути /path/to/existing/tree/tree
.
Эта команда обновит файлы в существующем дереве с файлами от нового дерева.