You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

修改AuthenticatesUsers.php后git pull报错,该如何解决?

解决Git拉取时Vendor文件冲突的问题

先处理当前Git Pull报错

选项1:放弃本地对Vendor文件的修改(推荐,因为不该直接改依赖源码)

执行以下命令还原本地修改:

git checkout -- myproject_app/vendor/laravel/ui/auth-backend/AuthenticatesUsers.php

之后就能正常执行git pull拉取代码了。

选项2:需要保留修改逻辑(但不要直接改Vendor文件)

  1. 先暂存本地修改:
git stash
  1. 拉取远程代码:
git pull
  1. 恢复暂存的修改:
git stash pop
  1. 关键:迁移修改逻辑到自定义控制器
    Laravel的认证逻辑应该通过重写控制器方法来修改,而非直接改动依赖包源码。比如找到项目里的app/Http/Controllers/Auth/LoginController.php(没有的话自行创建),让它继承AuthenticatesUsers,再重写你需要调整的方法(比如login、validateLogin等)。
  2. 放弃Vendor文件的修改:
git checkout -- myproject_app/vendor/laravel/ui/auth-backend/AuthenticatesUsers.php

解决.gitignore不生效的问题

因为你之前已经把Vendor目录提交到Git仓库了,.gitignore只对未被Git跟踪的文件生效,所以需要让Git停止跟踪Vendor目录:

  1. 执行命令移除Git对Vendor目录的跟踪(本地文件会保留,只是Git不再管控它):
git rm -r --cached myproject_app/vendor
  1. 确保你的.gitignore文件里已经添加了正确的路径:
# Laravel Vendor目录
myproject_app/vendor/

如果你的项目根目录就是myproject_app,只需要写vendor/即可。
3. 提交修改:

git add .gitignore
git commit -m "不再跟踪vendor目录"
git push

内容的提问来源于stack exchange,提问作者pheromix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 19:57:47