linux分支

2019-03-03 18:31:01 zxy131072 阅读数 950

无意中看到linux的分支介绍,发现家族真的可以用恐怖来形容,下面的图是其家谱图。

 

这个庞大的分支,真的被linux的开源折服。

下面的链接是官方下载地址:

                                                   https://futurist.se/gldt/ 

 

这其中还有一种使用源码方式获得这些资料的方式,尝试进行了一下。

1、下载待安装的源码,并将其解压至Ubuntu下:

 

 

2、打开build.sh脚本

看到第15行需要安装一个工具,需要安装一下,该工具的下载地址:

https://launchpad.net/gnuclad

 

3、将该工具拷贝至Ubuntu下并解压,找到该ELF文件的路径,我的为下面的路径:

/home/skyfall/006_soft/gnuclad-0.2.4_amd64/usr/bin
 

4、将.build.sh中的第15行的路径进行替换成上面的路径

 

5、在执行脚本前,查看下现在的文件的目录结构:

 

 

6、执行./build

 

 

7、再次查看下目录结构,发现在DIST_gldt下有一个gldt.svg文件,将其拷贝至windows下查看,与下载的一样,完成!

 

 

 

2018-11-14 17:00:03 lairenqing 阅读数 2905

GNU/Linux发行版分支图2019 - Linux Distributions Timeline 2019

高清大图:2048px-Linux_Distribution_Timeline.svg.png 

2048px-Linux_Distribution_Timeline.svg.png

2017-02-13 19:11:50 uotail 阅读数 2730

第一次看见,开源的力量!我只知道红帽和乌班图

图片来源:http://i.linuxtoy.org/docs/guide/ch48s09.html

2020-04-16 20:09:24 rikeyone 阅读数 59

mainline分支维护

Linux kernel的主线分支只有一个master分支,该分支由Linus Torvalds维护,对于不同的版本的内核是采用打tag的方式进行发布的,一般在发布一个正式版本之前,都会先发布一系列的候选版本,比如linux-5.6最终版发布之前先发布了linux-5.6.rc1到linux-5.6.rc7,rc值越大越接近最终版本linux-5.6。

从linux-3.0之后的版本,mainline中的内核版本号只涉及主版本号和次版本号两个:linux-x.y,对于我们在网上搜索到的linux-x.y.z版本的内核一般都是指stable版本,stable版本会在主版本和次版本之后再多一个版本号,用来记录稳定版的更新。

stable分支维护

以linux stable仓库为例,针对不同的大版本内核做了不同的分支:

比如 linux-5.6.y 分支,表示的实际上就是linux-5.6版本stable内核,它的提交历史:

1.当Linus Torvalds维护的mainline分支中发布了linux5.6之后(commit节点被Linus Torvalds标记tag为linux5.6),从mainline分支中checkout出来一个分支linux-5.6.y,此时linux-5.6.y分支的状态也就是linux-5.6的最终版本。

2.后续linux-5.6.y分支的维护将由stable分支维护者进行维护,内核版本号变为linux-5.6.y,这里的y从1开始以此递增。

3.自此之后linux-5.6.y stable分支将和Linus Torvalds维护的mainline分支分道扬镳,mainline继续新特性的开发,stable则只会合入特定的一些patch以保证稳定性,并且定期打上tag:linux-5.6.y。

linux-next

下一个周期补丁合并的主要树是linux-next,由Stephen Rothwell 维护。根据设计 linux-next 提前包含了下一个合并窗口要合并的patch,理论上应该是下一个合并窗口关闭之后主线应该要成为的样子。可从以下位置下载:


http://www.kernel.org/pub/linux/kernel/next/

Linux-next 已经成为内核开发过程中不可或缺的一部分;在一个给定的合并窗口中合并 的所有补丁都应该在合并窗口打开之前的一段时间内找到进入Linux-next 的方法。当Linus发布一个Mainline主线内核时,一个为期2周的主线合并窗口就会打开,在此期间,mainline分支会从linux-next以及各个子模块的维护者处接收合并patch,当合入一些patch后,就会形成下一个版本的rc候选版本,一般会经历多个rc版本,等待时机成熟,就会发布下一个版本的Mainline内核。


The primary tree for next-cycle patch merging is linux-next, maintained by

Stephen Rothwell.  The linux-next tree is, by design, a snapshot of what

the mainline is expected to look like after the next merge window closes.

Linux-next trees are announced on the linux-kernel and linux-next mailing

lists when they are assembled; they can be downloaded from:



    http://www.kernel.org/pub/linux/kernel/next/



Linux-next has become an integral part of the kernel development process;

all patches merged during a given merge window should really have found

their way into linux-next some time before the merge window opens.

2013-01-05 15:13:48 whjwhja6 阅读数 358

if 语句
if 语句的结构如下:
单分支结构
if condition
then
statement1
statement2
..........
fi
双分支结构
if condition
then
statement1
statement2
..........
else
statement3
..........
fi
多分支结构
if condition1
then
statement1
statement2
..........
elif condition2
then
statement3
statement4
..........
elif condition3
then
statement5
statement6
..........
fi
多分支结构

if condition1
then
statement1
statement2
..........
elif condition2
then
statement3
statement4
..........
elif condition3
then
statement5
statement6
..........
else
statement7
..........
fi

if 语句使用举例

#!/bin/bash
# filename: areyouok.sh
echo "Are you OK ?"
read answer
# 在 if 的条件判断部分使用扩展的 test 语句 [[...]]
# [[]] 中可以使用正则表达式进行条件匹配
if [[ $answer == [Yy]* || $answer == [Mm]aybe ]]
then
echo "Glad to hear it."
fi
例2:

#!/bin/bash
# filename: myssh.sh
# 在条件测试中判断位置参数的个数 $#
if [ "$#" -eq "2" ]; then
ssh $1@$2
else
echo "Usage: $0 <username> <FQDN or IPAdress>"
fi

linux git分支使用

阅读数 140

linux版本分支

阅读数 4929