Es ist möglich, einen anderen Zweig zu haben, der die Tests enthält, und einen Produktionszweig, der nur den Code enthält, den Sie verwenden möchten.
Ich mache das selbst mit Cocoa-Klassen, wo ich die Klasse teilen möchte, aber auch ein Beispielprojekt, das zeigt, wie man die Klasse benutzt, aber ich will nicht den ganzen zusätzlichen Code, wenn ich ' m es als Submodul verwenden.
Der Trick besteht darin, alle Ihre Arbeit mit Tests und Beispielen in der Hauptzweig oder Entwicklungszweige, die mit der Hauptzweig zusammenführen. Und dann erstellen Sie einen anderen Zweig (in meinem Fall nenne ich das production
Zweig), wo Sie eine git rm
auf alle Nebenstellencode tun.
Jetzt ist der Trick, keine Entwicklung in diesem Produktionszweig zu machen. Arbeiten Sie nur am Hauptzweig und fügen Sie den Master-Zweig in regelmäßigen Abständen in den Produktionszweig ein (falls gewünscht). Git "merkt", dass der Subsidiary Code entfernt wurde, und abgesehen von ein wenig Aufräumarbeiten bleibt ein Zweig übrig, der nur den Code enthält, den Sie verwenden/freigeben möchten, aber der Test/Beispielcode ist im Repository noch vorhanden Sie sind jemand, der sich darum kümmert, damit zu arbeiten.
Sie können ein Beispiel dafür auf GitHub mit meiner JCSSheetController Klasse sehen.
Ich verstehe nicht, warum Sie nicht möchten, dass Ihre Tests Teil des Master-Codes sind. –
Es muss nicht sein - es kann in einem separaten Zweig sein, aber Sie können immer noch den Kern Ihres Codes in einem separaten Zweig verkaufen. – Abizern