git前端面试题整合

6 篇文章 0 订阅
3 篇文章 0 订阅
1.fetch和merge和pull的区别

pull相当于git fetch 和 git merge,即更新远程仓库的代码到本地仓库,然后将内容合并到当前分支。

  • git fetch:相当于是从远程获取最新版本到本地,不会自动merge ;
  • git merge : 将内容合并到当前分支 ;
  • git pull:相当于是从远程获取最新版本并merge到本地。
2.tag

tag指向一次commit的id,通常用来给开发分支做一个标记。

  1. 打标签 : git tag -a v1.01 -m “Relase version 1.01” ;
  2. 提交标签到远程仓库 : git push origin --tags ;
  3. 查看标签 : git tag ;
  4. 查看某两次tag之间的commit:git log --pretty=oneline tagA…tagB ;
  5. 查看某次tag之后的commit: git log --pretty=oneline tagA…
3.Git和SVN的区别
  • Git是分布式版本控制系统;
  • SVN是集中式版本控制系统。
4.Git工作流程
  1. 在工作目录中修改某些文件 ;
  2. 对修改后的文件进行快照,然后保存到暂存区域;
  3. 提交更新,将保存在暂存区域的文件快照永久转储到Git目录中。
5.常用命令
  • git show : 显示某次提交的内容 ;
  • git add :将工作文件修改提交到本地暂存区;
  • git rm : 从版本库中删除文件 ;
  • git reset : 从暂存区恢复到工作文件 ;
  • git reset: 恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改;
  • git diff : 比较当前文件和暂存区文件差异;
  • git diff git log -p : 查看每次详细修改内容的;
  • diff git branch -r: 查看远程分支;
  • git merge : 将branch分支合并到当前分支 ;
  • git stash : 暂存 ;
  • git stash pop:恢复最近一次的暂存 ;
  • git pull: 抓取远程仓库所有分支更新并合并到本地 ;
  • git push origin master: 将本地主分支推到远程主分支。
6.说明新建一个GIT功能分支的步骤,提供每个步骤的指令,并对指令进行说明。
  1. Git branch name : 创建名字为name的branch;
  2. Git checkout xxx_dev :切换到名字为xxx_dev的分支;
  3. Git pull 从远程分支拉取代码到本地分支;
  4. Git checkout -b main_furture_xxx 创建并切换到main_furture_xxx;
  5. Git push origin main_furture_xxx 执行推送的操作,完成本地分支向远程分支的同步。
7.说明GIT合并的两种方法以及区别。

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

  • Git Merge:这种合并方式是将两个分支的历史合并到一起,现在的分支不会被更改,它会比对双方不同的文件缓存下来,生成一个commit,去push。
  • Git ReBase:这种合并方法通常被称为“衍合”。他是提交修改历史,比对双方的commit,然后找出不同的去缓存,然后去push,修改commit历史。
8.如何查看文件的提交历史和分支的提交历史。
  • 使用git log查看文件提交历史 :Git log filename
  • 使用git log查看分支提交历史 :Git log branch file
9.我们在本地工程常会修改一些配置文件,这些文件不需要被提交,而我们又不想每次执行git status时都让这些文件显示出来,我们该如何操作?

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

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

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

11.当GIT出现如下情况时,该如何处理?your-branch-is-ahead-of-origin-master-by-3-commits

Git commit
Git pull
Git push

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

很多命令都可能出现冲突。但冲突的直接来源是merge和patch(应用补丁)。其它的命令是执行这两个操作导致冲突。
rebase:重新设置基准,然后应用补丁。
pull:会自动merge
repo sync:会自动rebase
cherry-pick:会应用补丁
没有更新代码就进行提交,覆盖别人的代码。
区别:

  • Git比svn快,而且更加的流畅。
  • Git在本地就可以使用,可以随便保存各种历史记录,不用担心污染服务器。
  • Git在branch和branch之间切换非常简单。
  • Git没有被lock不能commit 的情。
13.列举工作中常用的几个git命令?

新增文件的命令:git add file或者git add .
提交文件的命令:git commit –m或者git commit –a
查看工作区状况:git status –s
拉取合并远程分支的操作:git fetch/git merge或者git pull
查看提交记录命令:git reflog

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
2024年前端面试题可能会涉及以下几个方面的内容: 1. HTML/CSS基础知识:包括HTML标签的使用、CSS选择器、盒模型、浮动、定位等基本概念和常见问题。 2. JavaScript基础知识:包括数据类型、变量、运算符、流程控制语句、函数、作用域、闭包等基本概念和常见问题。 3. 前端框架和库:例如React、Vue等,可能会涉及到它们的基本原理、生命周期、组件通信等方面的问题。 4. 前端性能优化:包括减少HTTP请求、压缩和合并文件、使用CDN加速、懒加载、缓存等方面的知识。 5. 前端工程化:包括模块化开发、构建工具(如Webpack)、版本控制(如Git)、自动化测试等方面的知识。 6. 前端安全:包括XSS攻击、CSRF攻击、点击劫持等常见安全问题及其防范措施。 7. 前端跨域问题:包括同源策略、跨域请求的方法(如JSONP、CORS等)以及解决跨域问题的方案。 8. 移动端开发:包括响应式设计、移动端适配、触摸事件、移动端性能优化等方面的知识。 9. Web标准和浏览器兼容性:包括HTML5、CSS3的新特性以及不同浏览器之间的差异和兼容性问题。 10. 数据可视化:包括使用图表库(如Echarts、D3.js)进行数据可视化的基本原理和常见问题。 以上只是一些可能涉及到的内容,具体的面试题目还会根据面试官的要求和公司的需求而有所不同。在准备面试时,建议多做一些实际项目练习,加深对前端知识的理解和应用能力。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值