Git
1.描述什么是Git,有哪些作用
- 分布式版本控制工具
作用:
-
追踪文件的变更
-
并行开发
2. 描述Git工作结构和本地库操作常见命令
结构
-
Git 工作区
-
暂存区
-
本地(版本)库
常见命令
-
git status命令用于显示工作目录和暂存区的状态
-
git add hello.txt命令将文件内容添加到索引(将修改添加到暂存区)。也就是将要提交的文
件的信息添加到索引库中。(将工作区写入暂存区)
-
git rm命令用于从工作区和索引中删除文件(将暂存区删除到工作区)
-
git commit命令用于将更改记录(提交)到存储库。将索引的当前内容与描述更改的用户和
日志消息一起存储在新的提交中(暂存区提交到本地库)
- git checkout命令用于切换分支或恢复工作树文件。git checkout是git最常用的命令之一,
同时也是一个很危险的命令,因为这条命令会重写工作区(暂存区重写工作区)
-
git log命令用于显示提交日志信息(git reflog ) [都需要经过本地库]
-
git reset命令用于将当前HEAD复位到指定状态。一般用于撤消之前的一些操作(如:git
add,git commit等)。(git reset --hard 指定日志ID)
3. 什么时候使用git status
- 当需要显示工作目录和暂存区的状态
4. 描述git diff作用、 git diff head作用
-
git diff作用:工作区中的文件和暂存区进行比较
-
git diff head作用:暂存区中的文件和本地库进行比较
5. git中如何查看日志,如何进行历史的记录追溯命令
-
git log:用于显示提交日志信息
-
git reflog :用于显示需要回退的步骤HEAD@
6. 描述公司内部Git的执行流程(图1)
7. 什么情况下会发生代码冲突?代码冲突产生后如何解决?
- 项目经理和开发人员 修改同一行代码,并进行提交
解决
-
及时拉取远程库代码
-
修改后代码及时推送
8. 团队开发中,如何避免代码冲突?
-
使用分支并行开发
-
及时拉取远程库代码
-
修改后代码及时推送
9. 什么是分支,分支的优点?操作分支的常见命令
a. 含义:在版本控制过程中,使用多条线同时推进多个任务。
b. 优点:
i. 同时并行推进多个功能开发,提高开发效率
ii. 各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。
iii. 失败的分支删除重新开始即可
c. 常见命令
i. git branch命令用于列出,创建或删除分支。
ii. git checkout命令用于切换分支或恢复工作树文件。
10.空对象模式
Null Object Pattern
-
一个空对象取代 NULL 对象实例的检查
-
Null 对象不是检查空值,而是反应一个不做任何动作的关系
-
这样的 Null 对象也可以在数据不可用的时候提供默认的行为
-
在空对象模式中,我们创建一个指定各种要执行的操作的抽象类和扩展该类的实体类,还创建一个未对该类做任何实现的空对象类,该空对象类将无缝地使用在需要检查空值的地方。
空对象模式的应用场景
-
对象实例需要一个协作实例。空对象模式不会引入协作实例,它只是使用现有的协作实例。
-
部分协作实例不需要做任何处理。
-
从客户端中将对象实例不存在的代码逻辑抽象出来。
空对象模式的优点
-
它可以加强系统的稳固性,能有效地减少空指针报错对整个系统的影响,使系统更加稳定。
-
它能够实现对空对象情况的定制化的控制,掌握处理空对象的主动权。
-
它并不依靠Client来保证整个系统的稳定运行。
-
它通过定义isNull()对使用条件语句==null的替换,显得更加优雅,更加易懂。
空对象模式的缺点
- 每一个要返回的真实的实体都要建立一个对应的空对象模型,那样会增加类的数量。
本文作者:Ritchie里其
本文链接:https://www.cnblogs.com/wang-zeyu/p/16691691.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步