美文网首页
Git常用操作

Git常用操作

作者: 何大必 | 来源:发表于2019-03-25 20:35 被阅读0次

    情况一

    git pull遇到错误:error: Your local changes to the following files would be overwritten by merge
    由于你跟别人改了同一份文件,所以pull代码的时候会这样。

    解决方法1:可以保留本地改动

    git stash //保存当前工作进度,会把暂存区和工作区的改动保存起来
    git pull origin master
    git stash pop
    

    如此一来,服务器上的代码更新到了本地,而且你本地修改的代码也没有被覆盖,之后使用add,commit,push 命令即可更新本地代码到服务器了。

    拓展

    git stash save 'message...'可以添加一些注释
    git stash list 显示保存进度的列表。也就意味着,git stash命令可以多次执行。
    git stash clear删除所有存储的进度。

    git stash pop [–index] [stash_id]
    git stash pop 恢复最新的进度到工作区。git默认会把工作区和暂存区的改动都恢复到工作区。
    git stash pop --index 恢复最新的进度到工作区和暂存区。(尝试将原来暂存区的改动还恢复到暂存区)
    git stash pop stash@{1}恢复指定的进度到工作区。stash_id是通过git stash list命令得到的
    通过git stash pop命令恢复进度后,会删除当前进度。

    解决方法2:不保留本地改动

    git reset --hard
    git pull origin master
    

    参考:

    https://blog.csdn.net/misakaqunianxiatian/article/details/51103734
    https://blog.csdn.net/anhenzhufeng/article/details/78052418
    https://blog.csdn.net/daguanjia11/article/details/73810577

    情况二

    本地branch1已改动,但是不想提交,想要从master上重新建分支branch2
    在branch1上保存已改的东西:git stash
    切换到master上:git checkout master
    在master分支上新建branch2:git checkout -b branch2
    这样branch2上的内容就跟master上一样了。
    参考

    相关文章

      网友评论

          本文标题:Git常用操作

          本文链接:https://www.haomeiwen.com/subject/potivqtx.html