每当我们在使用git的时候,我们查看每一条之前自己加入的纪录:
git log --oneline
这个时候就可以看到自己之前所commit的内容,不过,maybe我们会觉得有点confuse在最前头的b1a645f是什麽意思,嘿嘿,这个就有趣啦!
我们所看到的这些不知道是什麽的代码,其实就是每一次commit的纪录後git所赋予它的编号,它代表“纪录”,其实有很多的文章,包括之前看过的为自己学Git,都大致上的说:其实这些编号,就像是贴纸一样。
那....是怎麽样的贴纸概念??
可以想像一个画面,就是假如我在同一个分支上,commit了一次内容,这个时候就会产生一个贴纸,指着前面一个贴纸
像是这样,应该还算好懂吧!
然後,只要我们commit了一次,就会产生一个贴纸,然後他会指着前面的贴纸。版本控制的原理基本上就是源自於这个原理。
在上面可以看到一个东西,叫做HEAD,意思就是你现在正在的分支,总之,如果你转移了branch,你会看到现在HEAD指着的东西也就不一样了。
Merge的概念,就有点像是原本的家产被收割了这种感觉,或者换个比较有政治色彩的说法,就是PRC统了ROC,不是啦XD
Merge就是合并....well也对啦,「统」这个字眼就是在搞这件事情,
假设我今天正在master主分支上,我想要合并cat,这个时候指令如下:
git merge cat
这个时候可以回去看档案,你大概会发现一件事情,就是cat新增的档案,在master上就会全部都有,But,大家应该会好奇一个问题:
假设我今天merge了cat,那这样cat会不见吗?
NONO,并不会。
举个例吧:
现在MJ是我的主分支:
git merge Julia
然後我要合并Julia这个分支
这个时候MJ这个主分支上就会增加一个Julia的档案。
如果你去问塔绿班这个问题,应该会有人跳脚,嘻嘻。如果你去问小粉红这个问题,应该也是一样XD
其实结果都一样,但就是名义不一样,但其实要认真来说,其实要看你要拿这次的合并做什麽?
总之,merge的实际意义,其实意思就像是:「之前只有你有,现在我们都有了!」,merge的指令会确保这一点。
不过说到这里,大概点到为止啦XD
merge还有一些在合并上的小细节~有机会再写文章来说吧
铁人赛
昨天重新熟悉整个"游戏执行区"之後,就剩下两个主要的区块了 今天来看"...
前几天我们成功上传了多张照片,但是我们的画面有点丑丑的,所以我们今天要把它修改成更漂亮,且下面会有...
多载 利用JAVA中的多载,就不需要这麽多的函数来做相同的工作! 那多载到底是什麽呢?其实就是指相同...
竟然已经到了24天,终於快结束了~ 接续昨天的练习, 1.将Light图层Pre-compose起来...
还记得在中坜上课时,吴老师常说:Java因介面而伟大。 初学物件导向程序概念,还真的不太能体悟为什麽...