软件开发中的主干(trunk),是指在版本控制系统中一个没有命名的分支。主干多半是专案开发过程中软件的基础,若开发者只在主干上进行开发,主干上会有专案最新版本的软件版本,不过不一定是最稳定的软件版本。另一种开发方式是由主干上的某版本衍生出分支,在确认分支稳定,可以正常工作之后,再将分支合并到主干。依开发模式以及交付政策的不同,主干中可能会是最稳定的软件、也可能是最不稳定的软件,或是介于两者之间的版本。
其他和主干类似的词语有baseline(基准)、mainline(主线),但有时这些词语有不同的意义。有时也会将主干称为“头”(HEAD),不过HEAD不是指特定的分支,而是某一分支上最新提交的版本,主干及分支上都会有各自的HEAD。
多半主要的程式开发工作会在主干上进行,稳定的版本会储存为分支,偶尔会将分支上进行的错误修正合并回主干。若专案不常变化,或是某一机能需要较长时间开发,有可能会在非主干的分支上进行开发。