本地做了修改,想要拉取远程,不想将现在的修改commit,想要合并远程冲突以后只commit一次,正确做法
如果你想在本地修改的基础上拉取远程的更改,并希望在解决冲突后只进行一次提交,可以按照以下步骤操作:
操作步骤
-
暂存本地修改
首先,将你本地的修改暂存到stash
中,以清理工作目录:git stash
-
拉取远程分支
从远程拉取最新的代码并与本地合并:git pull origin <branch-name>
注意将
<branch-name>
替换为你正在开发的分支名称。 -
恢复本地修改
将刚刚暂存的修改恢复到工作目录:git stash pop
如果存在冲突,Git 会提示冲突的文件,并在文件中标记冲突位置。
-
解决冲突
编辑有冲突的文件,手动解决冲突后,将它们标记为已解决:git add <file1> <file2> ...
-
一次性提交修改
在冲突解决完并标记后,进行一次提交:git commit -m "Merge changes with conflict resolution"
-
推送到远程仓库
如果需要将本地合并后的修改推送到远程:git push origin <branch-name>
完整命令总结
git stash
git pull origin <branch-name>
git stash pop
# 解决冲突并标记为已解决
git add <file1> <file2> ...
git commit -m "Merge changes with conflict resolution"
git push origin <branch-name>
注意事项
- 如果你只想暂存部分修改,可以使用
git stash -p
交互式选择需要暂存的内容。 - 如果远程更新和本地修改冲突较多,建议多次查看和测试,确保合并后的代码稳定。
- 使用
git stash pop
后,stash 条目会被删除。如果希望保留它,可以用git stash apply
而不是pop
。 - 为了避免拉取操作引起意外的代码丢失,建议在开始前对本地修改备份。
本文来自博客园,作者:海_纳百川,转载请注明原文链接:https://www.cnblogs.com/chentiao/p/18613614,如有侵权联系删除