本文链接:https://www.breakyizhan.com/git/5035.html
说明新建一个GIT功能分支的步骤,提供每个步骤的指令,并对指令进行说明。

答:Git branch name     创建名字为name的branch

Git checkout xxx_dev    切换到名字为xxx_dev的分支

Git pull    从远程分支拉取代码到本地分支

Git checkout -b main_furture_xxx    创建并切换到main_furture_xxx

Git push origin main_furture_xxx    执行推送的操作,完成本地分支向远程分支的同步

说明GIT合并的两种方法以及区别。

答:Git代码合并有两种:Git Merge 和 Git ReBase

Git Merge:这种合并方式是将两个分支的历史合并到一起,现在的分支不会被更改,它会比对双方不同的文件缓存下来,生成一个commit,去push。

Git ReBase:这种合并方法通常被称为“衍合”。他是提交修改历史,比对双方的commit,然后找出不同的去缓存,然后去push,修改commit历史。

如何查看文件的提交历史和分支的提交历史。

答:使用git log查看文件提交历史

Git log filename

使用git log查看分支提交历史

Git log branch file

我们在本地工程常会修改一些配置文件,这些文件不需要被提交,而我们又不想每次执行git status时都让这些文件显示出来,我们该如何操作?

答:在Git工作区的跟目录下创建一个特殊的.gitignore文件,然后把忽略的文件名编辑进去,Git就会自动忽略这些文件。

git提交代码时候写错commit信息后,如何重新设置commit信息?

答:可以通过Git commit --amend 来对本次commit进行修改。

当GIT出现如下情况时,该如何处理?

your-branch-is-ahead-of-origin-master-by-3-commits

答:

Git commit

Git pull

Git push

描述清楚冲突产生的原因?git跟其他版本控制器有啥区别?

答:

很多命令都可能出现冲突。但冲突的直接来源是merge和patch(应用补丁)。其它的命令是执行这两个操作导致冲突。

rebase:重新设置基准,然后应用补丁。

pull:会自动merge

repo sync:会自动rebase

cherry-pick:会应用补丁

没有更新代码就进行提交,覆盖别人的代码。

区别:

Git比svn快,而且更加的流畅。

Git在本地就可以使用,可以随便保存各种历史记录,不用担心污染服务器。

Git在branch和branch之间切换非常简单。

Git没有被lock不能commit 的情。


更多GIT面试题请访问:Git的常见问题以及面试题汇总 - Break易站