Git面试题
Git面试题 Git命令
·
- 开发者在哪个版本控制系统上绑定了远程存储库?
- CVCS(集中式版本控制系统,Centralized Version Control System)
- DVCS(分布式版本控制系统,Distributed Version Control System)
- DVCS有以下哪个特点?
- 开发者有完整的克隆代码仓,其中包含所有变更历史。
- 开发者需要连接到服务器才能查看代码变更历史。
- 代码变更总是保存到中央代码仓。
- 代码变更是如何保存到代码仓的?
- 存进数据库
- 存储为一个分支上的一个提交
- 存进文件
- 存进master分支
- 使用Feature分支工作流开发时,通常什么时候会进行代码评审?
- 在你的Feature分支Push到远程仓库之后
- 在你的Feature分支合并到本地master分支之后
- 在你的Feature分支Push到远程仓库并且合并到master分支之后
- 用git status命令可以看哪些内容?
- 上次提交的提交信息是什么
- 工作目录中有哪些文件还没有放进暂存区
- 暂存区中有哪些内容还没有提交到仓库
- 上次提交修改了哪些内容
- 你在工作目录中建了一个空文件,接着写入了2行内容,保存退出编辑之后,又接着添加了5行内容。那么,你现在能否可以将之前只有2行内容的版本保存到暂存区?
- 可以,每次保存过的历史版本都可以恢复,Git就是这么强大
- 不可以,不是每次保存过的历史版本都可以恢复,因为Git不能自动记录工作目录中的变化
- 执行命令git commit -a -m "Add new file"的效果是?
- 在仓库中添加一个新文件
- 将放入暂存区的修改内容提交到仓库
- 将所有被Git管理的文件的变更内容提交到仓库,包括已经放入暂存区的修改,以及还没有放入暂存区的修改
- 将暂存区中已经修改的文件,以及还未添加到暂存区的文件,都提交到仓库
- 用哪个命令比较工作目录和暂存区内容?
- git diff
- git diff --cache
- git diff HEAD
- 用哪个命令比较工作目录和最后一次提交的内容?
- git diff
- git diff --cache
- git diff HEAD
- 用哪个命令比较暂存区和最后一次提交的内容?
- git diff
- git diff --cache
- git diff HEAD
- 你在工作目录中刚刚新建了一个空文件,现在又想修改文件名。除非你使用git mv命令,否则Git将保留对先前命名的引用。
- 正确
- 错误
- 执行命令git log --oneline的效果是?
- 有语法错误,应该是执行git log -oneline
- 用简略模式查看所有提交
- 显示最近一次提交信息
- 显示最近变更的1行内容
- 执行命令git log Readme.md的效果是?
- 有语法错误,应该是执行git log Readme
- 查看Readme.md的相关提交信息,包括commit ID、作者、日期和提交信息
- 显示Readme.md的最近一次提交信息,包括commit ID、作者、日期和提交信息
- 为Readme.md文件添加日志信息
- 执行命令git log --stat -2的效果是?
- 显示最近2次提交的详细信息,包括commit ID、作者、日期和提交信息,还有和上次提交的差异
- 显示最近提交的2个文件的详细变更信息,包括commit ID、作者、日期和提交信息,还有和上次提交的差异
- 显示最近2次提交的差异
- 有语法错误
- 执行命令git log --reverse --grep=new的效果是?
- 有语法错误,应该是执行git log --reverse --grep new
- 按时间降序显示提交信息中包含“new”的所有提交,包括commit ID、作者、日期和提交信息
- 显示最新的提交
- 按时间升序显示提交信息中包含“new”的所有提交
- 你已经有了一个本地Git仓库,现在想通过Git服务网站(例如CODEChina、Github等)进行协同开发,按什么步骤可以设置好本地Git环境和远端Git环境?
- 在Git服务网站建一个项目,在这个项目中建一个空仓库,在本地仓库设置origin远端URL,将本地仓库Push到origin
- 在Git服务网站建一个项目,在项目中初始化一个有文件内容的仓库,将远端仓库clone为本地的新仓库,将原仓库的内容放进新仓库,在新仓库中提交内容,并Push到远端仓库
- 在Git服务网站建一个项目,在项目中初始化一个有文件内容的仓库,将本地文件上传到远端仓库,将远端仓库clone为本地的新仓库
- 关于git amend命令,描述正确的有哪些?
- 你只能修订提交的内容,不能修订提交信息
- 你可以在不改变提交内容的情况下,修订提交信息
- 你可以撤回修订,恢复到之前的提交内容和信息
- 只要知道commit ID,你可以随时进行修订
- 你可以同时修订提交内容和提交信息
- 按顺序写出以下4个命令的效果:checkout <filename>、commit --amend、reset --hard、reset <filename>。A:撤销某个文件在暂存区中的修改;B:在前一次提交中追加修改内容;C:刷新工作目录中的文件;D:刷新工作目录中的文件,并撤销暂存区中的修改
- ABDC
- ABCD
- DBAC
- CBDA
- 以下描述正确的有哪些?
- 用Git中的reverse命令,可以回退到最近一次提交
- 用Git中的revert命令,不加任何参数,表示回退到上一次提交
- 用Git中的revert命令,可以回退到任意一次提交
- 用Git中的reset命令,可能从仓库中删除某些提交
- 最准确描述pull --rebase执行效果的是?
- 远端分支将被拉取,如果远端分支没有新建分岔,将被合并进当前分支
- 远端分支将被拉取,形成一个3路合并的结果
- 远端分支将被拉取,并合并到当前分支
- 远端分支将被拉取,通过将提交置于其它提交之前的方式来合并到当前分支
- 要将远端仓库的origin/master分支合并到本地当前分支,使用的命令是?
- git pull origin
- git fetch master
- git fetch origin/master
- git merge origin/master
- (待续)
DEVPOD社区,旨在打造高质量的DevOps工具知识库。包括商业工具:Atlassian Jira,Confluence,Jfrog,极狐, CodeBeamer等。开源工具栈如:Gitlab,ArgoCD, Jenkins等。 致力于帮助企业建实现云原生时代DevOps转型。
更多推荐
已为社区贡献14条内容
所有评论(0)