У меня есть два каталога в / var / www
, один - это новая установка Laravel , а другой - git clone
приложения Laravel.
Мне в основном нужно, чтобы приложение Laravel перешло на новую установку Laravel, чтобы оно могло нормально работать с необходимым кодом / vendor
.
Однако я не могу понять, как использовать для этого командную строку. Я либо rsync
, либо удаляю файлы / vendor
, потому что их нет в git clone
, либо он ничего не перезаписывает.
-www
--laravelFresh
--laravelGithubApplication
Я хочу, чтобы все в laravelGithubApplication
вышло и перезаписало все дубликаты в laravelFresh
. Я не хочу, чтобы он синхронизировался, потому что все, что есть в laravelFresh
, не имеет дубликата в laravelGithubApplication
, не следует перезаписывать.
Пожалуйста, помогите.
Продолжая наши вопросы и ответы в комментариях, попробуйте это (при условии, что все находится в /var/www):
# cd /var/www
# mkdir laravelCombined
# cd laravelGithubApplication
# find . | cpio -dumpv /var/www/laravelCombined
# cd ../laravelFresh
# find . | cpio -dumpv /var/www/laravelCombined
Перед удалением содержимого /var/www/laravelGithubApplication
и /var/www/laravelCombined
проверьте, что то, что находится в /var/www/laravelCombined
, — это то, что вам нужно. Если это:
# rm -rf /var/www/laravelGithubApplication
# rm -rf /var/www/laravelFresh
# mv /var/www/laravelCombined /var/www/laravelFresh
mv laravelGithubApplication/* laravelFresh/
Содержимое каталогов до:
laravelGithubApplication/
laravelGithubApplication/file
laravelFresh/
laravelFresh/file
laravelFresh/vendor/
laravelFresh/vendor/file
Содержимое каталогов после:
laravelGithubApplication/
laravelFresh/
laravelFresh/file (overwritten)
laravelFresh/vendor/
laravelFresh/vendor/file
Как вы пожелаете, файлы-дубликаты(file
)перезаписаны; существующие каталоги(vendor
)остаются нетронутыми; и все «вышло» из laravelGithubApplication/
.