大家好,欢迎来到IT知识分享网。
3.相对引用~
如果要移动多步,用
^就比较繁琐,这时可以使用~来指定上移多少步
该副本需要:移动 HEAD,master 和 bugFix 到目标所示的位置。
可见结果中master指到C6,bugFix移到C0,HEAD指向C1
git branch -f master C6:会将 master 分支强制指向C6
git checkout HEAD~1:会将头标上移一个到C1
git branch -f bugFix HEAD~1: 会将 bugFix 分支强制指向头标的上一位,即C0。本关通过。
4.撤销变更
该副本需要:分别撤销 local(本地) 分支和 pushed(远程) 分支上的最近一次提交。 初始如下:
git reset HEAD~1 :local(本地) 分支撤销一步到达C1
git checkout pushed:将分支切到pushed(远程) 分支
git revert HEAD: 此时 C2’ 的状态与 C1 是相同的,达到撤销目的
Ok,这样你就会了Git的90%,就像天才是百分之九十九的努力和百分之一的灵感,然而那百分之一却是你最大的门槛…
三、整理提交记录
1.Git cherry-pick
该副本需要: 将三个分支中的提交记录复制到 master 上,下面看起来挺复杂,不过别怕:
git cherry-pick C3 C4 C7: 将 C3 C4 C7复制到,当前所在的位置(master)
怎么样,就这么简单。
2.Git rebase
交互式 rebase 指的是使用带参数 –interactive 的 rebase 命令, 简写为 -i
该副本需要:将C3,C5,C4节点依次拷贝至C1下
git rebase -i overHere:就可以打开一个交互面板。
OK ,讲得也挺多的,之后的知识。下篇见,Bye。以前也写过一篇:杂篇:一首诗认识[- Git -]
四、写个小例子
经过上篇,你一定对git 有所了解了,本文不再是攻略,而是一个实际测试:
1.初始化git仓库
git init mixed: 将mixed文件夹使用git管理
2.添加文件到git仓库
git add HelloWorld.java:添加文件,git add .会添加文件夹内所有文件
3.提交文件到git仓库
git commit -m "提交的描述"下面是提交后的反馈,0eb09bc代表唯一的SHA1,用于节点的身份标识
可见第一次提交之后会形成一个master主支和HEAD节点。
在代码里添加一个string2Int的方法,然后进行测试。
public class HelloWorld {
结果表现良好,现在你要去睡觉了。
每晚躺床第一句,代码没提赶快去。
看到了节点增加完成,你就安心地睡觉了
然后你思来想去,不行,还没加注释呢,明早起来看不懂了怎么办?
public class HelloWorld {
- 将一个字符串转化成数字
- @param num 待转字符串
- @return 数字
*/
private static int string2Int(String num) {
return Integer.parseInt(num);
}
}
于是你修改了文件,添加注释,再提交,成功出现第三个节点,终于可以安心睡觉了。
4.创建分支
之后经过不懈努力,修复了bug,其间提交了两次,加了异常捕捉。
public class HelloWorld {
- 将一个字符串转化成数字
- @param num 待转字符串
- @return 数字
*/
private static int string2Int(String num) {
int result =0;
5.切换分支与合并分支,查看分支与删除分支
现在仍在bugFix分支,既然bug已修复,那就回到master主支继续开发,并且将bugFix支合并到主支上
通过
git branch可以查看当前分支情况,如果想看更多信息,加-v
- master
- master f9299a6 修复bug提交点2
一个bug解决了,该分支也没有必要了,就可以删除分支。
这样一套流程下来,bugFix既不会影响主线的代码,在bug修复后合并删除,也就相当于bugFix从未出现过一样。bug 如此,feature 也一样,在某种意义上,两者是非常类似的。(从不写bug的人,手动滑稽)
6.git reflog 和 git log
如果你想查看日志,可以通过
git reflog或git log
最后,面试前该准备哪些资源复习?
其实客户端开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。
这里再分享一下我面试期间的复习路线:(以下体系的复习资料是我从各路大佬收集整理好的)
《Android开发七大模块核心知识笔记》
《960全网最全Android开发笔记》
《379页Android开发面试宝典》
《507页Android开发相关源码解析》
只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。
真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。
[外链图片转存中…(img-Rf4NKHYJ-85)]
《379页Android开发面试宝典》
《507页Android开发相关源码解析》
只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。
真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/109668.html





















