自学内容网 自学内容网

Git 合并冲突提示 Local Changes Prevent from Merge

Git 合并冲突提示

Local Changes Prevent from Merge
Your local changes will be overwritten by merge.
Commit, stash, or revert them to proceed.
DS Store

“Local Changes Prevent from Merge”
(本地更改阻止合并)

提示内容如下:

“Your local changes will be overwritten by merge.
Commit, stash, or revert them to proceed.”
(你的本地更改将被合并操作覆盖。请先提交、暂存或还原这些更改,然后再继续。)

下方列出了一个文件:

  • .DS_Store(由 macOS 系统自动生成的隐藏文件,用于存储文件夹的显示属性)

整体意思是:当前工作目录中有未提交的本地更改(这里是 .DS_Store),因此 Git 拒绝执行合并操作,要求你先处理这些更改。

解决方案

1. 把当前所有改动压入一个临时“储藏”
git stash push -m "file before merge"
2. 现在工作区干净了,可以合并
git merge <目标分支> 

# 或者

git pull
3. 合并完再把刚才的改动弹回来
# 如有冲突,按提示解决即可

git stash pop 

优点

  • 不会丢失任何改动

  • 历史记录保持干净(没有无意义的 .DS_Store 提交)


.DS_Store 的额外建议

  • 个人开发:把 .DS_Store 写进 .gitignore,然后全局忽略

    echo '.DS_Store' >> ~/.gitignore_global
    git config --global core.excludesfile ~/.gitignore_global
  • 团队协作:把 .DS_Store 写进项目根目录的 .gitignore 并提交,这样所有人都会忽略它。





原文地址:https://blog.csdn.net/wochunyang/article/details/155483174

免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!