Java工具面试题:版本控制工具

废话不多说,直接上题!

Git和SVN有什么区别?

  • Git是分布式的,而SVN不是分布式的
  • Git把内容按元数据方式存储,而SVN是按文件
  • Git的内容的完整性要优于SVN
  • SVN只能有一个指定中央版本库。而 Git可以有无限个版本库。

SVN优缺点?

优点

  • 管理方便,逻辑明确,符合一般人思维习惯。
  • 易于管理,集中式服务器更能保证安全性。
  • 代码一致性非常高。
  • 适合开发人数不多的项目开发。

缺点

  • 服务器压力太大,数据库容量暴增。
  • 如果不能连接到服务器上,就不能提交,还原,对比等等。
  • 不适合开源开发。但是一般集中式管理的有非常明确的权限管理机制(例如分支访问限制),可以实现分层管理,从而很好的解决开发人数众多的问题。

Java工具面试题:版本控制工具

 

Git优缺点?

优点

  • 适合分布式开发,强调个体。
  • 公共服务器压力和数据量都不会太大。
  • 速度快、灵活。
  • 任意两个开发者之间可以很容易的解决冲突。
  • 离线工作。

缺点

  • 代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

说一下Git创建分支的步骤?

  • Git branch test 创建test的branch
  • Git checkout dev 切换到dev分支
  • Git pull 远程分支拉到本地
  • Git checkout -b main 创建并切换到main分支
  • Git push origin main 推到远程分支

说一下Git合并的两种方法以及区别?

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

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

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

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

使用git log命令

什么是 git stash?

用于临时保存和恢复修改,可跨分支。使用场景:写着代码,写着写着,别人告诉我bug修好了,我就要去更新一下代码,如果更新冲突,应该把当前代码保存起来,此时可以使用git stash命令。命令的本质帮我们做了两件事:①把所有改动做了一个快照,然后保存起来,并还原原来的文件。②在需要的时候,可以把之前的修改恢复。

什么是git stash drop

删除保存的存储。

git config 的作用?

配置或读取相应的环境变量。这些环境变量,主要保存了 Git 在各个环节的具体工作方式和行为。位置:

  • 用户主目录的.gitconfig
  • 工作目录的.git下面的.gitconfig
  • /etc/.gitconfig
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值