git常见问题解决方法(一)

VIM如何退出

当对文件编辑完成,需要退出vi回到shell时,可以使用如下方法:

  • 命令模式下连按两次大写字母Z,若文件被修改过则vi会保存并退出,反之直接退出
  • 在末行模式下,可以输入如下命令选择操作:
  1.  :w 保存当前编辑文件,并等待用户继续输入
  2. :w newfile 把当前编辑后的文件内容保存到指定的newfile中,原有文件保持不变
  3. :q 退出vi返回shell
  4. :q! 放弃修改返回shell
  5. :wq 保存文件后返回shell
  6. :x 同命令模式ZZ功能一致
  7. :u 撤销上一次编辑

工作区文件还原

1.修改的文件没有加入暂存区,执行:

git checkout .  
git clean -xdf

2.修改的文件已经加入暂存区,执行:

git reset --hard
git clean -xdf

单个文件回归

单个文件回归到指定历史版本,需先查看文件修改记录: git log Main.java

然后指定回归版本的commit id: git reset a4e215234a Main.java

Git Stash

git stash提供了工作现场储存功能,比如当本地代码和远程库冲突时,可以先将本地工作现场储存起来,获取远程库最新代码后再解决冲突。

  • 查看所有存储的工作现场: git stash list
  • 恢复最近一次的工作现场并删除: git stash pop
  • 指定应用某次工作现场,此方式不会删除工作现场: git stash apply stash@{1}
  • 删除某次工作现场: git stash drop stash@{1}
  • 清除所有工作现场: git stash clear

远程库操作

  • 查看当前远程库: git remote
  • 查看当前远程库详细信息: git remote -v
  • 用别名添加远程库:
git remote add origin http://www.github.com/a.git
  • 删除远程库: git remote rm nickname
  • 重定向本地仓库指向的远程库:
    git remote set-url origin(别名) http://www.gitlab.com/a.git(新的仓库地址)

     

回滚提交

push失败后需要回滚上一次提交,该命令执行后修改文件回到add阶段:

git reset --soft HEAD^

如果软回滚处理不了,用硬回滚还原最初的版本:

git reset --hard origin/dev

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值