[Git] 常见错误以及解决方法

2020-04-01  本文已影响0人  紫藤lvy

前言: git 现在作为目前最流行的版本控制软件,有其独特的优势,相比与ClearCase, SVN 而言,开源,免费分布式的软件特性,越来越获得主流软件公司的青睐。在软件工程师的面试中基本上也会有所涉及。

下面就是笔者常见的几个问题,做出解答:

问题 1: 如果在Git repo 下误删了某些文件,update 文件没有任何反应?

答案:当前在dev分支需要切换到master分支。


git  checkout  master 
git  reset  --hard

问题 2:如何强行替换掉本地改动?
答案:


git fetch --all  
git reset --hard origin/master 
git pull

问题3:
git 执行git pull –rebase报错误如下:
error: Cannot pull with rebase: You have unstaged changes.
error: Additionally, your index contains uncommitted changes.

原因:如果有未提交的更改,是不能git pull的

解决:

git stash   #可用来暂存当前正在进行的工作 
git pull –rebase 
git stash pop 从Git栈中读取最近一次保存的内容

问题 4:
git commit 出错,出现没有merger的文件?
error: commit is not possible because you have unmerged files.
hint: Fix them up in the work tree, and then use 'git add/rm <file>'
hint: as appropriate to mark resolution and make a commit.

解决:

git reset book.java
git checkout -- book.java
git commit -m "change book adapter"

问题 5:
如何查看某个文件的提交历史?
方法1:

git log --pretty=oneline book.java   会显示这个文件提交的历史记录以及对应的hashcode
git show hash_code 查看详细提交内容

方法 2:

git log book.java   查看 文件的commit history
git log -p book.java 显示每次提交的diff。
git show hash_code book.java 查看详细提交内容
上一篇下一篇

猜你喜欢

热点阅读