我有两个目录,/var/www
其中一个是全新安装的拉维尔另一个是git clone
Laravel 应用程序。
我基本上需要将 Laravel 应用程序转移到全新安装的 Laravel 中,以便它可以使用必要的/vendor
代码正常运行。
但是,我不知道如何使用命令行来执行此操作。我要么rsync
删除这些/vendor
文件,因为它们不在其中git clone
,要么它不会覆盖任何内容。
-www
--laravelFresh
--laravelGithubApplication
我希望所有内容都laravelGithubApplication
出来并覆盖laravelFresh
其中的所有重复项。我不希望它同步,因为其中laravelFresh
没有重复的内容laravelGithubApplication
不应被覆盖。
请帮忙。
答案1
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/
。
答案2
继续评论中的问答尝试这个(假设所有内容都在 /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