zoukankan      html  css  js  c++  java
  • git常见问题和高级用法

    1.git pull时本地文件和服务器文件冲突解决方法(转)

    http://blog.csdn.net/ican87/article/details/29869567

    查看当前发送冲突的文件:

    git status -uno

    2.强制覆盖本地文件

     2.1 本地代码没有提交,也没有在缓冲区,出现错误:

    bogon:protocol anthonyliu$ git pull

    Updating 1f692a0..266b010

    error: Your local changes to the following files would be overwritten by merge:

    paycenterapi/gen-nodejs/BankCardService.js

    Please commit your changes or stash them before you merge.

    Aborting

    bogon:protocol anthonyliu$ git checkout ./

    bogon:protocol anthonyliu$ git pull

    直接命令行: git chekout ./即可

     2.2 服务器代码覆盖本地

    git reset --hard HASH       //返回到某个节点,不保留修改,本地修改的代码也会消失

    git reset --soft HASH        //返回到某个节点,保留修改,本地修改的代码也会消失

    3. souceTree对比和回滚

    有个Compare,From branch1 To branch2 会列出两个分支不同的提交日志,而这些日志是branch2具备而branch1中不具备的。

    回滚一个文件:

    点击选中的提交日志,挑选1个提交,右击到“重置到提交”之后提交即可。结合beyond compare,可以对比不同分支的相同文件:安装也是非常的简单

    4.gitingore不能忽略里面的文件夹是什么原因

    参考链接:http://blog.csdn.net/zhangjs0322/article/details/37658669 

    5.git rebase、merge等高级命令行的用法
    git rebase 为衍生,有两个方面的作用,一个是合并多个提交记录合并成一个记录;另外一个是把一个分支中的提交记录赋值到另外一个分支中。
    6.git  reset checkout revert的用法
       https://www.cnblogs.com/houpeiyong/p/5890748.html,在工作中仔细研究下。

    回退某个文件到某个hash,git reset hash 文件名。注意:只会从当前的user.js从缓存区中移除出去,而不会影响工作目录中对user.js的更改。如下:

    7. Please move or remove them before you can merge,出现以上的提示,删除本地引起冲突的文件即可

    8 .查看文件的修改历史记录

    git查看某个文件的修改历史,命令如下:

    git log --pretty=oneline filename
    

    输入上面命令后,会得到改文件修改历史的sha-1值,然后输入下面的命令查看具体修改了什么内容:

    git show sha-1

    9.从远程pull代码,显示错误:error: You have not concluded your merge (MERGE_HEAD exists)

    错误是拉取的代码与本地合并发送冲突,如果你本地不知道修改了什么,不烦用远程直接覆盖本地:

    $:git fetch --all
    $:git reset --hard origin/master(你当前的分支)
    $:git fetch

    10.修改密码之后,sourceTree拉取代码会报错

    在偏好设置中->高级->去掉修改密码的那个账号,重新拉取代码,输入新的密码即可。

    省略输入密码:仓库-远程仓库,设置user:password@url即可

    11. 推送代码出现:

       git push解决办法: ! [remote rejected] master -> master (pre-receive hook declined) 

       原因是推送的分支(master)收到保护,去掉保护即可。

    12 撤销最近本地的一次commit

    git reset --soft HEAD^
  • 相关阅读:
    重温Thinking in java
    线程池
    apache DBUtils学习
    Mysql 建表 数据类型选择
    毫秒必争,前端网页性能最佳实践
    tomcat6 开启GZIP
    处理百万级以上的数据提高查询速度的方法
    Tomcat内存设置
    Tomcat全局Filter
    Tomcat多工程共享Session、ServletContext
  • 原文地址:https://www.cnblogs.com/liuyinlei/p/6393587.html
Copyright © 2011-2022 走看看