共计 1569 个字符,预计需要花费 4 分钟才能阅读完成。
“明天在食堂门口遇到了暗恋已久的女神,女神笑着给我递了张纸条就进食堂了,我关上纸条看到下面写的两个字“钙氧钨氧”,我认为是瞎写的就扔了,早晨我睡觉时越想越不对劲,当初我肠子都悔青了 …”
大家有没有被这个语文搞晕了,反正笨叔是晕了!
上面和大家讲一个 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/b…
4) 下载这个仓库到本地。
$ git clone https://gitee.com/benshushu/b…
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/sc…
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 网页上最终成果如图所示。
这下小明同学心悦诚服了!