“今天在食堂门口遇到了暗恋已久的女神,女神笑着给我递了张纸条就进食堂了,我打开纸条看到上面写的两个字“钙氧钨氧”,我以为是瞎写的就扔了,晚上我睡觉时越想越不对劲,现在我肠子都悔青了... 

大家有没有被这个语文搞晕了,反正笨叔是晕了!

下面和大家讲一个git的案例。是这样的,我们接了项目,在选择内核版本的时候,客户说,既然笨叔的内核用4.0,那我们就用4.0开发吧,我们一听好高兴。客户说,你们先建一个git树,这个git树里需要包含Linux 4.0所有社区里的git log信息。

我让小明同学去建这个git树,结果小明同学搞了1天还没搞出来。他说,叔,我只会建git 树的时候一把把所有文件都push到新的git树里,这个把社区的git log搞进行怎么玩啊,我网上搜了一天了,也没找到靠谱的文章。

那咋办,我们和小明同学一起来建这个树吧。

01 建树啦

比如我们在码云上建这棵树。

1)       登录Gitee网站,注册一个新账号。

2) 添加SSH key到gitee上。

3) 在Gitee中创建项目

在“Name”对话框中填入“ben-linux-test”,其他保持默认设置,点击“New”按钮就成功创建了一个新的git仓库了。从github网页中我们能找到我们新建的仓库的地址:

https://gitee.com/benshushu/ben-linux-test.git

4)  下载这个仓库到本地。

$ git clone https://gitee.com/benshushu/ben-linux-test.git

5) 这时候这个仓库是空的,我们生成一个补丁并且提交到远程仓库中。

$ cd ben-linux-test

$ echo "#ben-linux-test" >> README.md

$ git add README.md

$ git commit -m "firstcommit"

$ git push origin master

最后通过git push origin master命令把本地仓库推送到github上,需要输入github上的用户名和密码。

6) 下载Linux官方仓库代码。接下来的工作就要在这个本地的git仓库里下载官方linux-4.0的代码,那应该怎么呢?首先我们需要添加Linux官方的git仓库。这里可以使用“git remote add”命令来添加一个远程仓库地址,如下面命令所示。

$ git remote add linux https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

git fetch命令可以把新添加的远程仓库代码下载到本地。

$ git fetch linux

7)  创建Linux 4.0分支。

接下来我们需要把官方仓库中Linux 4.0标签的所有commit添加到Gitee上的master分支上。首先需要从remotes/linux/master分支上checkout一个名为linux-4.0的本地分支。

$ git checkout -b linux-4.0linux/master

$ git reset v4.0 --hard

这样本地linux-4.0分支就是真正基于Linux-4.0的内核,并且包含了Linux 4.0上所有的提交的信息。

8)  合并本地修改到Linux 4.0上

接下来的工作就是需要把本地linux-4.0的分支上的commit统统都merge到我们本地的master分支上。

$ git checkout master

$ git merge linux-4.0 --allow-unrelated-histories

最后这个本地的master分支的提交就变成这样:

这样我们本地master分支上就包含了所有linux-4.0内核的git log信息了。最后一步只需要把这个master分支推送到我们Gitee上的远程仓库即可。

$ git push origin master

推送完成之后,我们在Gitee网页上最终效果如图所示。

这下小明同学心服口服了!

[笨叔点滴6] 叔,这个git咋玩啊?相关推荐

  1. [笨叔点滴2] 为啥子ARM32体系结构中每个处理模式都有一个单独的栈?

    " 各位小伙伴,我是小笨叔.笨叔尽量每天给大家分享一点点小东西,可能是笨笨的.傻傻的.甜甜的.酸酸的小点滴,记录这每一刻每一天的小感悟,就像小雨点一样,它会慢慢汇合到大江大海!" ...

  2. [笨叔点滴3] “栈”谁便宜了?

    " 有一次和女同学A吃饭,她带着小姑凉一块.在吃饭期间,同学给夹了块豆腐,小姑凉用天真无邪的眼神看着我:笨叔,你除了占我妈便宜,你还占过谁的便宜?  我顿时无语了..." 上面是网 ...

  3. python作者龟叔_龟叔和他的Python

    经过了漫长的旅程,终于要看到主角Python了.Python是现在非常非常流行的编程语言,在我们能看到的大部分编程语言排行榜中,Python都能在前三甲中拥有一席之地 ,并且发展势头非常之猛,可以这么 ...

  4. ubantu 黑屏_死机黑屏专题上线啦,早鸟只要299,看完薪水翻一番

    全程约5小时高清,140多页ppt,8大实验,基于x86_64的Centos 7.6和arm64,提供全套实验素材和环境.全面介绍kdump+crash在死机黑屏方面的实战应用,全部案例源自线上云服务 ...

  5. 进军python——与@龟叔握手

    进军python-与龟叔握手 1.python的起源 -万恶之根源,罪恶之魁首 2.python的解释器 -集成开发环境 3.第一个python程序 - 需要记事本||cmd{比较恶心} 4.pyth ...

  6. 狼书三卷终大成,狼叔亲传Node神功【留言送书】

    大家好,我是若川.之前送过N次书,可以点此查看回馈粉丝,现在又和博文视点合作再次争取了几本书,具体送书规则看文末. 众所周知,我在参加掘金人气作者打榜活动(可点击跳转),需要大家投票支持呀.这次送书会 ...

  7. 送书!狼书三卷终大成,狼叔亲传Node神功

    大家好,我是winty!送一波狼叔的新书「狼书」,送5本! 送书规则见本文最后!送书规则见本文最后!送书规则见本文最后! 提起国内的Node.js布道师,你一定会想到狼叔! 狼叔(桑世龙,网名i5ti ...

  8. 百度领投“凯叔讲故事”的背后 智能音箱内容之战将弥漫到教育?

    百度对于内容的重视真是越来越大了.7月22日,百度宣布领投知名儿童内容品牌"凯叔讲故事"C轮融资.作为目前国内最火的儿童IP,"凯叔讲故事"已经累计播出了800 ...

  9. 狼书三卷终大成,狼叔亲传Node神功

    提起国内的Node.js布道师,你一定会想到狼叔! 狼叔(桑世龙,网名i5ting)从2015年开始活跃于CNode社区,累计发表文章200余篇,主题丰富多样--Node.js底层原理.npm目录结构 ...

最新文章

  1. docker 常用操作
  2. java高级工程师开放面试题集一
  3. JPA_could not extract ResultSet问题解决
  4. C#实现打印与打印预览功能
  5. 1269: GPA-一题简单英文题~
  6. jvm jstat_使用jstat的JVM统计信息
  7. Windows系统常用技巧总结
  8. discuz设置用户每天回帖数_discuz回贴通知插件实现-显示用户状态设置
  9. 十分钟学会Java RMI
  10. Core 提交返回500 问题 记录 来自网上文章
  11. 问一个 TCP 连接可以发多少个 HTTP 请求?
  12. 腾讯元老、上市公司CTO辞职后,每天对着200亩地发呆
  13. 京东2022双11预售期,商家该做些什么?
  14. 推荐系统深度学习篇-NFM 模型介绍(1)
  15. A Deep Learning-Based Remaining Useful Life Prediction Approach for Bearings 基于深度学习的轴承剩余寿命预测
  16. 螺纹检测案例-螺距测量-大径小径检测-螺牙检测
  17. 中国银联(霸面—面试经验)
  18. SpringBoot2使用hikari报 Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl
  19. SpringBoot高级教程
  20. Sublime Text 美化Json

热门文章

  1. 图-介绍(intro-Graph)
  2. BIGEMAP下载等高线(高程)使用教程
  3. 【视频演示】B站视频演示
  4. [文摘20090201]男女朋友~~需记住亦舒的77句话
  5. rtsp直播流转m3u8
  6. Java初始化大乱斗
  7. 用css使图片产生毛玻璃效果
  8. Python爬虫,爬取快看漫画每日更新模块
  9. 鸿蒙系统问世(开源!!!)
  10. 智能指针循环引用——你真的懂了吗?