2010-05-18 7 views
10

Ich möchte die Vorteile von GIT (und seinen Workflows) nutzen können, aber ohne die Kosten des Festplattenzugriffs - ich möchte nur die verteilten Revisionskontrollfähigkeiten von GIT nutzen, um so etwas wie eine Mischung aus zu produzieren Memcached und GIT. (vorzugsweise in .NET)hat jemand ein In-Memory-GIT-Repository erstellt?

Gibt es so ein Tier da draußen?

+6

würden RAM-Festplatten eine Option sein? –

+0

Es gibt eine Implementierung von Git in C#, genannt "Git #", aber es befindet sich in einem sehr frühen Stadium der Entwicklung. –

+0

Danke Jakub. Link ist http://www.eqqon.com/index.php/GitSharp –

Antwort

0

Ich glaube nicht, dass dies auf der Basis getan werden kann, dass die Compiler und Ressourcen, die von ihnen verwendet werden, nicht Open Source/von Microsoft freigegeben sind.

Technisch ist es zwar nicht haltbar, C# als Skriptsprache in Ihren Apps zu verwenden und mit Ihrem eigenen Compiler zu bauen ... aber warum sollten Sie?

Ich vermute die Idee ist, dass Microsoft das für Sie behandelt.

Nachdem Sie das gesagt haben, vielleicht wenn Sie herausfinden können, was die Teile sind und sie programmatisch aufrufen, sollten Sie in der Lage sein, einen Strom von JIT-verarbeiteten Code von dort zu nehmen Sie können, wo Sie wollen (in der Theorie natürlich), Aber das würde bedeuten, unsichere Aufrufe in undokumentierte Assemblys zu machen, die Microsoft wahrscheinlich nur verschleiert hat, um das Leben wirklich einfach zu machen.

Hat jemand eine Quelle für die tatsächlichen Compiler in .Net gesehen? Kann ich nicht sagen, ich habe ...

Würde für einige interessante Tricks obwohl.

JEDOCH ....

In den Reflexionsklassen ich bin sicher, dass Sie anrufen können „Emit“ irgendwo, die den Rahmen für Dinge Aussagen/Typdefinitionen wie der Code schreiben werden, vielleicht gibt es etwas in der Namespaces das nimmt die Ausgabe von Emit und stopft es in den Kompilierungsprozess ein ...

Was für ein cooles Konzept !!!

+0

Ich verwende C# /. NET für meine App, ich möchte GIT nicht in .NET konvertieren. Will ich will, ist der Feature-Set von GIT, da ich denke, es ist ein guter Weg, _generally_ Daten zu verwalten, ohne die notwendige Abhängigkeit von GNU/Linux und tatsächliche Dateipersistenz. –

1

Warum verwenden Sie nicht einfach die Windows-Version von git und rufen sie mit Process.Start()?

Wie für den Speicher, könnten Sie das Repository in einer RAM-Disk haben (wie Andrew oben vorgeschlagen), aber ich bin mir nicht sicher, wie groß der Leistungsgewinn wäre. Ich denke, es ist völlig in Ordnung, es auf der Festplatte zu haben, vor allem wenn man bedenkt, dass man es ohnehin oft im RAM zwischenspeichern würde.

Verwandte Themen