git常见的面试题
Posted andy0816
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git常见的面试题相关的知识,希望对你有一定的参考价值。
#####################################
如果代码出现bug,你们是如何解决的?
创建一个bug分支,然后进行bug处理,处理完毕后,合并到review分支,组长review成功后才能够合并到master
合并完成之后删除bug分支
回到dev分支继续开发。
###################################
git rebase的作用? 场景:在公司开发忘记提交到github托管,在家里又继续开发新的功能, 然后到公司昨天的代码跟你的新功能合并的时候可以用git fecth ---> git rebase 那么他的提交记录就不会出现分叉,保持了提交记录的整洁.
###################################
谁来做代码review? 做代码review -组长 -带你的人
#################################
如何做代码的review?
创建review分支,然后再创建自己的个人分支,当你完成自己的业务逻辑的时候,
再合并到review分支.给组长做代码的review
###############################
使用的github 还是gitlab?
用的是github,因为公司比较小,所以没有自己搭建gitlab,
但是用github的时候代码一定要用保密的,9美元建立一个仓库
###############################
列举工作中常用的几个git命令? 新增文件的命令:git add file或者git add . 提交文件的命令:git commit –m或者git commit –a 查看工作区状况:git status –s 拉取合并远程分支的操作:git fetch/git merge或者git pull 查看提交记录命令:git reflog
################################
提交时发生冲突,你能解释冲突是如何产生的吗?你是如何解决的?
开发过程中,我们都有自己的特性分支,所以冲突发生的并不多,但也碰到过。诸如公共类的公共方法,我和别人同时修改同一个文件,他提交后我再提交就会报冲突的错误。
发生冲突,在IDE里面一般都是对比本地文件和远程分支的文件,然后把远程分支上文件的内容手工修改到本地文件,
然后再提交冲突的文件使其保证与远程分支的文件一致,这样才会消除冲突,然后再提交自己修改的部分。
特别要注意下,修改本地冲突文件使其与远程仓库的文件保持一致后,需要提交后才能消除冲突,否则无法继续提交。必要时可与同事交流,消除冲突。
####################################
你使用过git stash命令吗?你一般什么情况下会使用它?
命令git stash是把工作区修改的内容存储在栈区。
以下几种情况会使用到它:
解决冲突文件时,会先执行git stash,然后解决冲突;
遇到紧急开发任务但目前任务不能提交时,会先执行git stash,然后进行紧急任务的开发,然后通过git stash pop取出栈区的内容继续开发;
切换分支时,当前工作空间内容不能提交时,会先执行git stash再进行分支切换;
########################################
如何查看分支提交的历史记录?查看某个文件的历史记录呢? 查看分支的提交历史记录: 命令git log –number:表示查看当前分支前number个详细的提交历史记录; 命令git log –number –pretty=oneline:在上个命令的基础上进行简化,只显示sha-1码和提交信息; 命令git reflog –number: 表示查看所有分支前number个简化的提交历史记录; 命令git reflog –number –pretty=oneline:显示简化的信息历史信息;
#######################################
git pull 和 git fetch 有什么区别?
git pull 命令从中央存储库中提取特定分支的新更改或提交,并更新本地存储库中的目标分支。
git fetch 也用于相同的目的,但它的工作方式略有不同。当你执行 git fetch 时,
它会从所需的分支中提取所有新提交,并将其存储在本地存储库中的新分支中。如果要在目标分支中反映这些更改,
必须在 git fetch 之后执行git merge。只有在对目标分支和获取的分支进行合并后才会更新目标分支。
为了方便起见,请记住以下等式:
git pull = git fetch + git merge
#######################################
以上是关于git常见的面试题的主要内容,如果未能解决你的问题,请参考以下文章