Eine wichtige Eigenschaft moderner Versionskontrollsysteme ist die Möglichkeit Branches zu erstellen. Ein neu erstellter Branch stellt aus Anwendersicht eine Kopie des Quellbranches da. Manchmal soll allerdings ein Branch erstellt werden, welcher nicht von der Versionsgeschichte eines Quellbranches beeinflusst ist. Unter Git kann ein solcher Branch mit dem Befehl:
git checkout --orphan branchName
erstellt werden. Dadurch wird ein Branch ohne Elternteil erstellt. Dies wiederum führt dazu das der Branch keinerlei Versionsgeschichte verfügt und unabhängig von anderen Branches des gleichen Repository existiert.
Für Projekte in Betriebssystemgröße (etwa einige BSDs) sind Branches Verschwendung. Die haben was viel moderneres: Unterordner. ;-)
Viel weniger Pflegeaufwand, viel einfacheres Merging.
https://xkcd.com/1597/