程序员思想——版本控制,常见面试题和知识点

2023-05-31 0 960

程序员思想——版本控制,常见面试题和知识点

复试之中的git和SVN的文本:

git是分布式系统版控制技术,SVN是封闭式版控制技术。

难题1:reset 与 rebase, pull 与 fetch 的差别

git reset 不修正commit相关的小东西,只会去修正.git产品目录下的小东西。

git rebase 会企图修正你早已commit的小东西,比如说全面覆盖commit的发展史等,但无法采用rebase来修正早已push过的文本,难再次出现兼容性难题。rebase还能来化解文本的武装冲突,化解三个人修正了同这份文本,接着失利的难题。

git pull pull=fetch+merge,

采用git fetch是拿取控制台预览,无法对邻近地区继续执行merge操作方式,无法去动你的邻近地区的文本。

而要用git pull会预览你邻近地区标识符到伺服器上有关联组成部分的新一代版

难题2:git merge和git rebase的差别

git merge把邻近地区标识符和早已获得的远距库房标识符合并。

git rebase是登位尾端的原意,gitmerge会聚合两个捷伊结点,以后的递交会合二为一表明,而rebase操作方式无法聚合捷伊操作方式,将三个组成部分结合成两个非线性的递交。

难题3:git和SVN的优劣。

1.SVN优劣

优点:

1、 管理方便,逻辑明确,符合一般人思维习惯。

2、 易于管理,封闭式伺服器更能保证安全性。

3、 标识符一致性非常高。

4、 适合开发人数不多的项目开发。

缺点:

1、 伺服器压力太大,数据库容量暴增。

2、 如果无法连接到伺服器上,基本上不能工作,看上面第二步,如果伺服器无法连接上,就无法递交,还原,对比等等。

3、 不适合开源开发(开发人数非常非常多,但Google app engine就是用svn的)。但一般封闭式管理的有非常明确的权限管理机制(例如组成部分访问限制),能实现分层管理,从而很好的化解开发人数众多的难题。

2.Git优劣

优点:

适合分布式系统开发,强调个体。

公共伺服器压力和数据量都无法太大。

速度快、灵活。

任意三个开发者之间能很难的化解武装冲突。

离线工作。

缺点:

1、学习周期相对而言比较长。

2、不符合常规思维。

3、标识符保密性差,一旦开发者把整个库克隆下来就能完全公开所有标识符和版信息。

4.git如何化解标识符武装冲突

git stash

git pull

git stash pop

这个操作方式就是把自己修正的标识符隐藏,接着把远距库房的标识符拉下来,接着把自己隐藏的修正的标识符释放出来,让git自动分拆。

如果要标识符库的文件完全全面覆盖邻近地区版。

git reset –hard

git pull

资料

小编整理的一些2019最捷伊复试资料免费送给每一位学习Java的朋友!

接着私信小编或者评论区发言”资料”就能获得

程序员思想——版本控制,常见面试题和知识点

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务