本文链接: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易站