折腾了半天,终于把小图的现有代码完整、干净地提交并push到了服务器上,你也本地clone了同一个版本库。请将版本库(https://github.com/ThssSE/MOOC_LifeGame)clone到本地,可以看到有多个分支,请切换到git-demo分支,然后先把git-demo-1合并至git-demo分支,会发生( )。
A. 合并成功,且不产生新的提交
B. 合并成功,且产生一个自动merge的新提交
C. 合并失败,因为出现了冲突(Conflicts)
D. 合并失败,因为git-demo分支是git-demo-1的子分支
查看答案
接着,请继续把git-demo-2分支合并至上述合并后的git-demo分支,会发生( )。
A. 合并成功,且不产生新的提交
B. 合并成功,且产生一个自动merge的新提交
C. 合并失败,因为出现了冲突(Conflicts)
D. 合并失败,因为git-demo-2分支是git-demo-1的子分支
接下来你们将进行开发工作,做了分工,每人实现几个功能。你在本地新增了一个名为feature1的branch,关于这个branch,以下说法正确的是( )。
A. 在本地新增feature1后,远端服务器的版本库中也会自动出现一个同名分支
B. feature1分支在本地被删除后,远端服务器的版本库中不会自动删除同名分支
C. 可以指定将feature1分支提交到远端服务器的其他分支,但这会导致其他分支被覆盖,因此一般不这么做
D. 可以指定将feature1分支提交到远端服务器的另一分支branch2,提交后可以手动再把branch2之前的最新提交merge到branch2去,因此不会丢失原branch2的提交
终于开始愉快地编程了,你们先进行bug的修复工作。你在修复某个bug时,非但没有完成修复,还导致了更严重的bug,这时你想把一个名为game的文件恢复至原始版本,只要执行( )就可以了。
A. git checkout --reset game
B. git rm --revert game
C. git checkout HEAD -- game
D. git ignore game
你又继续了bug修复,这回成功完成了修复。又过了一会儿,你在修复另一个bug时又不小心改乱了想恢复,于是用git reset --hard来把另一个文件恢复,但小手一抖不小心把已经完成修复的game文件恢复了导致数据丢失。丢失了的数据还能找回吗?( )
A. 不能,硬重置使工作区文件被覆盖,导致数据丢失无法找回
B. 不能,因为尚未提交
C. 能,可以通过git checkout HEAD@{1} -- game找回
D. 不确定,如果在重置前执行了git add 命令将game加入了暂存区,则可以在对象库中处于悬空状态的文件中找到