Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: GentooForum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

09.03.2007, 08:54

Tipp zum Verwenden von CVS

Hallo,

ich würde euch mal bitten mir einem Anstoß zu geben, wie ich mein Projekt am besten ins CVS rein bekomme, damit meine ich nicht die grundlegenden Befehle sondern eher die Struktur.

Mein Projekt sieht so aus:
Es gibt viele kleine Programme (Pa, Pb, Pc), die auf die gleichen Programmmodule (Pma, Pmb, Pmc) aufbauen. Zum Beispiel verwendet Pa das Module Pma und Pmc, Pb Pmb und Pmc und Pc alle Module.

Mein Wunsch ist es jetzt, wenn ich einem der Module ein Bug feststelle, das dieser automatisch in den anderen Programmen beim nächsten update behoben wird und da bei einem checkout von Pa die benötigten Programmmodule gleich mitgeliefert werden.

Teil 1 meines Wunsches dürfte kein Problem sein, wenn ich Pa, Pb, Pc, Pma, Pmb und Pmc im CVS in verschiedene Verzeichnise stecke. Stabile Programmversionen bekomme ich über Tagging. Fehlt jetzt nur noch das co Problem.

Habt ihr Ideen, wie man es realisieren könnte? Oder ist das mit CVS nicht so einfach zu lösen.

Danke an alle Mitdenker

suilenroc

2

09.03.2007, 09:05

RE: Tipp zum Verwenden von CVS

Also ich sehe den Zusammenhang mit CVS ehrlich gesagt überhaupt nicht. ?(

Grundsätzlich: von was für Programme und Module redest du mal? Erstellst du drei apps, welche 3 verschiedene shared object libs einbinden in C/C++ via GNU Autotools oder fährst du Java mit ant.

*Daran* wird sich deine Projectstruktur richten und die jeweiligen tools (GNU Autotools, cmake, ant, etc.) habe verschiedenen Möglichkeiten und Techniken die die Dependencies abzubilden.

Aber das hat alles *nichts* mit CVS zu tun ... und BTW: warum das Ur-Alt-Teil CVS überhaupt? Warum nicht Subversion?

Kannst du bitte etwas konkreter werden ...
http://www.dyle.org
IM-Account (Jabber!) sind auf meiner HP ...
There is no place like /home

http://www.gentooforum.de
http://www.gentoofreunde.org

<div>how to annoy a web developer?</span>

3

09.03.2007, 09:31

Hallo,

die Module sind (werden) alle selber geschrieben. In diesen sind jeweils verschiedene Funktionen implementiert, die ich in einem Programm mal brauch, in einem andreren mal nicht, z.B. das Ansteueren der seriellen Schnittstelle.

Eine Verwendung der ganzen GNU Tools (außer dem make) ist nicht möglich, da die Programme für einen Microcontroller sind. Geschrieben wird der Ganze Spass in Assembler.

Warum nicht CVS? Ich bin einmal in die Grundlagen dieses Tools eingearbeitet, und habe bis jetzt keinen Anlass und tiefgreifende Vorteile von SVN sehen können, die einen Umstieg in meinem Augen gerechtfertigt hätten.

Nun noch mal mein Problem genauer:
Im Workspace würde ich gern ein Verzeichnis Pa, dass die Unterverzeichnisse Pma und Pmc hat.
Im Repository dagegen sollen das Ganze nebeneinanderliegen also die Verzeichnise Pa, Pma und Pmc usw. ohne Unterverzeichnisse.

Ist es mit cvs möglich, wenn ich ein co von Pa mache, dass die Module Pma und Pmc automatisch mit in den Workspace geholt werden, und dann auch gleich als Unterverzeichnisse von Pa angelegt werden?

Ich hoffe das ist nun verständlicher geworden.

suilenroc

4

09.03.2007, 09:41

Ob cvs auch automatisch die Verzeichnisstruktur ändern kann, weiß ich nicht, aber das könntest du auf jedenfall mit einem Skript zum ein- und auschecken machen. Weiterhin weiß ich nicht, ob cvs auch Symlinks kann, dann wäre das ganze wohl auch nicht weiter schwer. Wo die "Module" liegen ist doch aber eigentlich wurst, du kannst sie doch anstatt von Pma/blabla auch über ../Pma/blabla benutzen.
"Erst nachdem wir alles verloren haben, haben wir die Freiheit, alles zu tun."
"It's only after we've lost everything, that we're free to do anything!"

Jabber: Die ID kann via PN erfragt werden.

5

09.03.2007, 09:52

Zitat

Original von suilenroc1183
Warum nicht CVS? Ich bin einmal in die Grundlagen dieses Tools eingearbeitet, und habe bis jetzt keinen Anlass und tiefgreifende Vorteile von SVN sehen können, die einen Umstieg in meinem Augen gerechtfertigt hätten.


Na ... dann bist du vermutlich der erste der das denkt. Subversion ist CVS in unzähligen Dingen überlegen.

Beispielsweise: folder-handling! CVS kann *generel* nicht mit Verzeichnissen umgehen. Nur mit Dateien *in* Verzeichnissen. Das ist ein massiver Unterschied.

Mit CVS sehe ich da kein LIcht für dich.

Gerade Subversion hingegen betrachtet ein Verzeichnis eigentlich als Datei (mit genau derselben History) .

UND: in Subversion kannst du Sym-Links im Repository anlegen, welche auf andere Teile des Repository verzweigen ... und ich denke, das ist genau das was du suchst.

Ist das vielleicht "ein Anlass und tiefgreifender Vorteil"?

Ehrlich ... mit CVS bin ich fertig. IMHO ist das echt Müll. Deine Anfrage kostet mich mit Subversion ein Lächeln ... mit CVS wirst du gegen die Wand fahren.

edit: @maggu: nein CVS hat von verzeichnissen im Grunde keine Ahnung.

edit2: Obwohl es einfacherer und sauberere Lösungen für dein Problem gibt als direkt im Subevrsion-Repo die Sym-Links zu legen. Ich würd schlicht und einfach eine flat-Struktur im Subevrsion belassen und unter den Pa, Pb, Pc die jeweiligen Sub.Module auschecken. Punkt. Ein "svn up" buw. "svn ci" kamm man dann schon dazu bringen den kompletten Baum upzudaten bzw. zu commiten.
http://www.dyle.org
IM-Account (Jabber!) sind auf meiner HP ...
There is no place like /home

http://www.gentooforum.de
http://www.gentoofreunde.org

<div>how to annoy a web developer?</span>

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »dyle« (09.03.2007, 09:55)