zoukankan      html  css  js  c++  java
  • Git 在解决冲突的时候文件覆盖

    更新代码导致被还原或覆盖的场景:
    1、触发冲突的必要条件是修改同一个文件且修改的位置非常近,否则Git会自动合并其内容
    避免更新代码导致被还原或覆盖的解决方案
    1、少修改的地方(生产环境、公网测试环境):推荐

     git pull


    2、进场修改的地方(本地开发环境):推荐 

    git stash


    2、存在两人或多人同时修改的地方(本地开发环境):推荐 

    git stash

    (下面着重介绍 git stash)

    git-stash用法小结

    1. git stash会把所有未提交的修改(包括暂存的和非暂存的)都保存起来,用于后续恢复当前工作目录。
    通过git stash命令推送一个新的储藏,当前的工作目录就干净了。stash是本地的,不会通过git push命令上传到git server上。

    2、实际应用中推荐使用 stash 的增强功能,给每个stash加一个message,用于记录版本,使用 git stash save 取代 git stash 命令。

    $ git stash save "test-cmd-stash"
    Saved working directory and index state On autoswitch: test-cmd-stash
    HEAD 现在位于 296e8d4 remove unnecessary postion reset in onResume function
    $ git stash list
    stash@{0}: On autoswitch: test-cmd-stash

     

    3、将缓存堆栈中的第一个stash删除,并将对应修改应用到当前的工作目录下。命令 git stash pop


    4、git stash pop 的增强 git stash apply ,将缓存堆栈中的stash多次应用到工作目录中,但并不删除stash拷贝。

    5、查看现有stash git stash list ,在使用git stash apply命令时可以通过名字指定使用哪个stash,默认使用最近的stash(即stash@{0})。

    $ git stash list
    stash@{0}: WIP on master: 049d078 added the index file
    stash@{1}: WIP on master: c264051 Revert "added file_size"
    stash@{2}: WIP on master: 21d80a5 added number to log

     

    6、移除stash 可以使用 git stash drop ,后面可以跟着stash名字。

    $ git stash list
    stash@{0}: WIP on master: 049d078 added the index file
    stash@{1}: WIP on master: c264051 Revert "added file_size"
    stash@{2}: WIP on master: 21d80a5 added number to log
    $ git stash drop stash@{0}
    Dropped stash@{0} (364e91f3f268f0900bc3ee613f9f733e82aaed43)

     


    7、移除stash 的增强命令 使用git stash clear命令,删除所有缓存的stash。

    8、git放弃暂存区的修改

    暂存区的修改就是已经你已经将文件 add,但是还没有commit的时候。 此时HEAD仍然指向最近一次提交的commit。 放弃暂存区的修改 git reset HEAD
    

      

     

    为之一笑:
    客户被绑,蒙眼,惊问:“想干什么?” 对方不语,鞭笞之,客户求饶:“别打,要钱?” 又一鞭,“十万够不?” 又一鞭,“一百万?” 又一鞭。客户崩溃:“你们TMD到底要啥?” “要什么?我帮你做项目,写代码的时候也很想知道你TMD到底想要啥!”
  • 相关阅读:
    DataRabbit 轻量的数据访问框架(14)-- DataRabbit 3.0 与 Linq to sql 性能比较
    通过Spring.net发布Remoting
    项目经理的职责
    DataRabbit 轻量的数据访问框架(15)-- IOrmAccesser的BatchInsert批量插入!
    【网络游戏专题】时间同步装置
    使用动态代理,提高工作效率
    总裁与专才
    Socket与拔掉网线
    索朗旺姆光
    TCP连接与防火墙
  • 原文地址:https://www.cnblogs.com/XuanZP/p/14599566.html
Copyright © 2011-2022 走看看