Git 将本地强制与服务器同步

滑稽mc的头像 发布于 25 天前 250 字 62 次阅读


由于一些不良的开发习惯...(比如直接在服务器上修改文件...或者是用 scp 上传文件......)导致本地版本与服务器版本不一致,这时需要强制同步为服务器上的正确版本 custom_smilies

一、先强制推送服务器版本

git add -A
git commit -m "sync: 服务器当前版本"
git push --force-with-lease origin main    # 用服务器强制覆盖 GitHub

二、本地强制与远程同步

git fetch origin
git reset --hard origin/main
git clean -fd    # 删除未跟踪的文件和目录

注

  • git fetch --all 只从远程拉取最新的提交记录和分支信息,但不修改本地文件,而 git pull 会自动合并。
  • 如果本地有新增的文件,尚未被 git add 的,reset --hard 不会删除它们。执行 git clean -fd 才会将未跟踪文件删除,如果需要保留新文件,则不执行 git clean -fd。
  • git clean -fdn 可以预览 git clean -fd 会删除的文件。