ssh服务器上解决未合并文件问题的最佳解决方案是什么


What is the best solution around unmerged files issues on an ssh server?

我一直在与laravel中的应用程序进行斗争。

我最近删除了一个名为Clockwork的包,并删除了与之相关的文件和目录。在存储下的laravel应用程序中,有一个文件夹名为Clockwork,在这里你可以看到作为缓存对象创建的json文件。在这个文件夹中有一个.gitignore文件。我从存储器中删除了文件夹。

现在,当我推送到repo并在ssh服务器上执行git pull时,我会收到这个错误。ssh服务器运行在Forge for laravel上,部署脚本如下:

A   app/Day.php
M   app/Http/Controllers/OffersController.php
A   app/Http/Controllers/VenueController.php
M   app/Http/Kernel.php
M   app/Http/routes.php
M   app/Offer.php
A   app/Type.php
A   app/Venue.php
M   composer.json
M   composer.lock
M   config/app.php
D   config/clockwork.php
M   config/database.php
A   database/seeds/DayTableSeeder.php
A   database/seeds/DaysPivotSeeder.php
M   database/seeds/OfferTableSeeder.php
A   database/seeds/OfferTypePivotSeeder.php
A   database/seeds/OfferTypeTableSeeder.php
A   database/seeds/VenueTableSeeder.php
A   env.example
A   env.production
M   readme.md
M   resources/views/home.blade.php
M   resources/views/offers/partials/_form.blade.php
A   resources/views/venues/create.blade.php
A   resources/views/venues/edit.blade.php
A   resources/views/venues/index.blade.php
A   resources/views/venues/partials/_form.blade.php
A   resources/views/venues/show.blade.php
U   storage/clockwork
D   storage/clockwork/.gitignore
Pull is not possible because you have unmerged files.
Please, fix them up in the work tree, and then use 'git add/rm <file>'

部署脚本

cd /home/forge/default
git pull origin master
composer install --no-interaction --no-dev --prefer-dist
php artisan migrate --force

正如你所看到的,"U"告诉我它没有合并,但它实际上已经不在了,所以我看不出问题是什么。

我试过git rm storage/clockwork,但我得到了这个:

ls
app     clockwork   framework   logs
mdunbavan$ git rm clockwork
fatal: pathspec 'storage/clockwork' did not match any files

有人能解释一下吗?

您不应该将storage/*提交给git,因为它是一个缓存文件夹。您可以通过以下操作将其删除:

git rm --cached storage/*