当前位置: 首页 > article >正文

Java最全面试题->Java基础面试题->JavaWeb面试题->Git/SVN面试题

文章目录

  • Git/SVN面试题
    • Git和SVN有什么区别?
    • SVN优缺点?
    • Git优缺点?
    • 说一下Git创建分支的步骤?
    • 说一下Git合并的两种方法以及区别?
    • Git如何查看文件的提交历史和分支的提交历史?
    • 什么是 git stash?
    • 什么是git stash drop?
    • git config 的作用?

Git/SVN面试题

下边是我自己整理的面试题,基本已经很全面了,想要的可以私信我,我会不定期去更新思维导图
哪里不会点哪里
在这里插入图片描述

Git和SVN有什么区别?

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

SVN优缺点?

  • 优点:
    管理方便,逻辑明确,符合一般人思维习惯。
    易于管理,集中式服务器更能保证安全性。
    代码一致性非常高。
    适合开发人数不多的项目开发。
  • 缺点:
    服务器压力太大,数据库容量暴增。
    如果不能连接到服务器上,就不能提交,还原,对比等等。
    不适合开源开发。但是一般集中式管理的有非常明确的权限管理机制(例如分支访问限制),可以实现分层管理,从而很好的解决开发人数众多的问题。

Git优缺点?

  • 优点:
    适合分布式开发,强调个体。
    公共服务器压力和数据量都不会太大。
    速度快、灵活。
    任意两个开发者之间可以很容易的解决冲突。
    离线工作。
  • 缺点:
    代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

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

  1. Git branch test 创建test的branch
  2. Git checkout dev 切换到dev分支
  3. Git pull 远程分支拉到本地
  4. Git checkout -b main 创建并切换到main分支
  5. Git push origin main 推到远程分支

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

  • Git Merge:
    这种合并方式是将两个分支的历史合并到一起,现在的分支不会被更改,它会比对双方不同的文件缓存下来,生成一个commit,去push。
  • Git ReBase:
    这种合并方法通常被称为“衍合”。他是提交修改历史,比对双方的commit,然后找出不同的去缓存,然后去push,修改commit历史。

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

使用git log命令

什么是 git stash?

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

什么是git stash drop?

删除保存的存储。

git config 的作用?

  • 配置或读取相应的环境变量。
  • 这些环境变量,主要保存了 Git 在各个环节的具体工作方式和行为。
    位置:
    用户主目录的.gitconfig
    工作目录的.git下面的.gitconfig
    /etc/.gitconfig

http://www.kler.cn/news/361596.html

相关文章:

  • 华为配置 之 Console线路配置
  • QT的文件操作类 QFile
  • 算法Day-7
  • 6-2.Android 对话框之基础对话框问题清单(UI 线程问题、外部取消、冲突问题、dismiss 方法与 hide 方法)
  • Mycat2安装配置
  • 信息学奥赛复赛复习18-CSP-J2022-01解密-二分答案、二分找边界、二分时间复杂度、二分求最小
  • Spring Boot助力:构建响应式论坛网站
  • python 结构作业
  • Maven项目管理工具-初始+环境配置
  • Anthropic 发布Claude 3.5 Haiku 以及一项炸裂的新功能 AI可以模仿人类访问电脑
  • 【Linux系统编程】第三十六弹---深入探索进程间通信:封装共享内存类并实现进程间数据共享
  • 点跟踪论文—RAFT: Recurrent All-Pairs Field Transforms for Optical Flow-递归的全对场光流变换
  • Python基础——类与对象
  • C++算法练习-day15——1.两数之和
  • 打造开放式语音智能体
  • 拴柱说Mac之Mac的高效使用技巧第三期
  • 源码编译方式安装htppd软件
  • mysql学习教程,从入门到精通,SQL导入数据(44)
  • Java重修笔记 UDP 网络通信
  • python从0快速上手(十六)小游戏开发
  • 某科技——北京——国护蓝中研判岗
  • 至多六步,linux挂载磁盘
  • DORA 机器人中间件学习教程(6)——激光点云预处理
  • 电脑输入账号密码后,屏幕黑屏只有鼠标解决办法
  • OBOO鸥柏:引领液晶拼接大屏kvm集中控制系统的技术革新
  • 基于SpringBoot的在线文档管理系统的设计与实现(论文+源码)_kaic