Sub Menu
Suche

Last Online
In order to view the online list you have to be registered and logged in.



We are a free and open
community, all are welcome.

Click here to Register

Lokales SVN/CVS/GIT Repository?

Lokales SVN/CVS/GIT Repository?

BeitragAuthor: WiZaRd » Mi 16. Feb 2011, 09:06

Hi ihrs,

nutzt jmd. ein lokales Setup für SVN/CVS/GIT - allgemein eben Revision Control? Ich habe einige private Sachen an denen ich rumbastel und bei denen ich zwar gerne den Überblick behalten möchte, die aber nicht für die Öffentlichkeit gedacht sind (weswegen SF, etc. flachfällt). Kennt da jmd. eine Lösung?
Ich weiß dass es für V$ den "Visual Source Safe" gibt, aber IIRC ist der auch nicht kostenlos und ich würde lieber eine OpenSource- oder wenigstens Free-Lösung nutzen.

WiZ
Bild

... 9 von 10 Stimmen im meinem Kopf sagen ich bin nicht verrückt... - die 10te summt die Melodie von TETRIS
Benutzeravatar
WiZaRd
Forenlegende
 
Beiträge: 3805
Registriert: Fr 7. Jan 2005, 19:28
Wohnort: The Realm of Magic

BeitragAuthor: Stulle » Mi 16. Feb 2011, 21:10

nimm einfach git. das ist sowieso voll dezentralisiert und daher schon von haus aus dafür super geeignet.

Stulle
Forenlegende
 
Beiträge: 1014
Registriert: So 5. Feb 2006, 09:55

BeitragAuthor: WiZaRd » Do 17. Feb 2011, 07:58

Ist ja auch schon installiert - aber wie soll man das einrichten? Irgendwie muss ich doch immer ne URL angeben...
Bild

... 9 von 10 Stimmen im meinem Kopf sagen ich bin nicht verrückt... - die 10te summt die Melodie von TETRIS
Benutzeravatar
WiZaRd
Forenlegende
 
Beiträge: 3805
Registriert: Fr 7. Jan 2005, 19:28
Wohnort: The Realm of Magic

BeitragAuthor: Stulle » Do 17. Feb 2011, 08:03

eigentlich nicht. neuen ordner anlegen, "Git Create repository here..." anklicken und du hast dein repository. Anschließend files adden und commit, tada, ein repository steht. die URL brauchst du nur, wenn du es zu einem anderen repository (server) pushen willst!

btw, ruhig mal msysgit und tortoise git updaten, die neuen versionen laufen immer besser auf windows!

Stulle
Forenlegende
 
Beiträge: 1014
Registriert: So 5. Feb 2006, 09:55

BeitragAuthor: WiZaRd » Do 17. Feb 2011, 18:43

Boaaaaaaaah ist das Forum grade lahm *kotz*

Also: sieht soweit gut aus... hab das jetzt einfach mal so gemacht, blöd nur, dass man kein Rep. in einem existierendem Ordner erstellen kann.
Alten Ordner umbenannt, neuen Ordner gemacht, GIT-Rep. erstellt, Files aus dem alten in den neuen verschoben und zugefügt... aber kannst du mir noch sagen, wie ich Verzeichnisse (Debug/Release, etc.) ausschließen kann? Mit ignore erstellt er ein git-ignore File, das er dann aber auch "einchecken" will.

EDiT: achso! Push/Pull geht lokal ja ebenfalls nicht - wie kann man sich nun also "alte" Versionen holen oder neue "einchecken"?
Bild

... 9 von 10 Stimmen im meinem Kopf sagen ich bin nicht verrückt... - die 10te summt die Melodie von TETRIS
Benutzeravatar
WiZaRd
Forenlegende
 
Beiträge: 3805
Registriert: Fr 7. Jan 2005, 19:28
Wohnort: The Realm of Magic

BeitragAuthor: Stulle » Do 17. Feb 2011, 20:35

hehe, musst dich mal bissl mit git beschäftigen^^ ;)

also, zuerstmal wegen nicht in bestehendem dir:
ganz einfach möglich. klick irgendwo so hin, dass du kein file erwischt, dann kannst du nen repository in jedem ordner erstellen. egal ob was drin ist oder nicht. anschließend alles adden was du willst. beim create repository wird dann ein versteckter ".git" ordner erstellt!

push/pull: diese kommandos sind nur für den austausch zwischen repositories! wie gesagt, Git ist dezentral, also jeder nutzer hat immer das ganze repository bei sich. hat er dieses repository muss er dann nur noch in das repository rein committen. seine commits kann er dann wieder zu einem beliebigen anderen rep pushen bzw. von einem anderen pullen. langer rede kurzer sinn, push/pull hat nix mit eigentlichen revisionen zu tun!

wie also alte versionen? dazu gibt es "Switch/Checkout...". das einzige problem, dort kann man eigentlich nur gut zwischen branches und tags switchen. daher ist es ratsam für das wechseln zwischen einzelnen konsekutiven commits das log des branches/repositories aufzurufen und dort über rechtsklick auf die gewünschte version zu wechseln. um zum ende zu gelangen zum branch master (oder beliebigen anderen branch) switchen.

was ignore betrifft, ich hab es gerad mal durchprobiert, du hast drei möglichkeiten zu ignorieren:
1. ordner: rechte maustaste, git menu, Delete and add to ignore list, ordner auswählen in liste
2. files: rechte maustaste, git menu, Delete and add to ignore list, "file by name" auswählen
3. files by extension: rechte maustaste, git menu, Delete and add to ignore list, "file by extension" auswählen

dann file commit und sobald du versuchst ein add durchzuführen werden diese files ausgeschlossen. alles gut.

noch was? :-P

Stulle
Forenlegende
 
Beiträge: 1014
Registriert: So 5. Feb 2006, 09:55

BeitragAuthor: WiZaRd » Fr 18. Feb 2011, 08:15

Stulle hat geschrieben:hehe, musst dich mal bissl mit git beschäftigen^^ ;)

Naja bisher hatte mir CVS/SVN mehr zugesagt, aber das Patch-Prinzip finde ich gut, von daher...

also, zuerstmal wegen nicht in bestehendem dir:
ganz einfach möglich. klick irgendwo so hin, dass du kein file erwischt, dann kannst du nen repository in jedem ordner erstellen. egal ob was drin ist oder nicht. anschließend alles adden was du willst. beim create repository wird dann ein versteckter ".git" ordner erstellt!

Ich hab immer die aktuellste Version installiert, bekam da aber eine Fehlermeldung, weil das Verzeichnis nicht leer war.

push/pull: diese kommandos sind nur für den austausch zwischen repositories! wie gesagt, Git ist dezentral, also jeder nutzer hat immer das ganze repository bei sich. hat er dieses repository muss er dann nur noch in das repository rein committen. seine commits kann er dann wieder zu einem beliebigen anderen rep pushen bzw. von einem anderen pullen. langer rede kurzer sinn, push/pull hat nix mit eigentlichen revisionen zu tun!

Hmja, ich dachte eben, dass ich .git extra "sagen muss", dass er die Versionen aktualisieren soll.

wie also alte versionen? dazu gibt es "Switch/Checkout...". das einzige problem, dort kann man eigentlich nur gut zwischen branches und tags switchen. daher ist es ratsam für das wechseln zwischen einzelnen konsekutiven commits das log des branches/repositories aufzurufen und dort über rechtsklick auf die gewünschte version zu wechseln. um zum ende zu gelangen zum branch master (oder beliebigen anderen branch) switchen.

Schön wäre hier doch, wenn ich eine Übersicht über meine Änderungen hätte... evtl. setze ich doch mal irgendeinen Server lokal auf, auch wenn das ja mit Kanonen auf Spatzen geschossen ist.
was ignore betrifft, ich hab es gerad mal durchprobiert, du hast drei möglichkeiten zu ignorieren:

Ich habs ohne Delete gemacht - wozu auch, will ich ja nicht, die Files sollen ja dableiben. Das File das dann erstellt wird will .git nur leider auch immer einchecken :D
Die Auswahl ist IMHO auch unzureichend, man sollte explizit bestimmte Dateien und Ordner ausschließen können, nicht nur einen Filter erstellen, der nachher evtl. zu viel oder zu wenig rausfiltert.

dann file commit und sobald du versuchst ein add durchzuführen werden diese files ausgeschlossen. alles gut.

Momentan ist es so, dass eigentlich alles korrekt aussieht... sofern die ignorierten Ordner kein Overlay bekommen. Werde jetzt nur mal mit den Revisions spielen müssen, dann stellt sich sicher raus, ob alles OK läuft.
Bild

... 9 von 10 Stimmen im meinem Kopf sagen ich bin nicht verrückt... - die 10te summt die Melodie von TETRIS
Benutzeravatar
WiZaRd
Forenlegende
 
Beiträge: 3805
Registriert: Fr 7. Jan 2005, 19:28
Wohnort: The Realm of Magic

BeitragAuthor: Stulle » Fr 18. Feb 2011, 08:32

WiZaRd hat geschrieben:Ich hab immer die aktuellste Version installiert, bekam da aber eine Fehlermeldung, weil das Verzeichnis nicht leer war.

hab hier auch die aktuellste, kein problem. es kommt nur eine abfrage wegen irgendwas mit straight. das einfach so lassen wie es ist. kann natürlich sein, dass er nörgelt wenn du versuchst nen rep in nem ordner aufzubauen wo ein SVN rep ist...


WiZaRd hat geschrieben:Hmja, ich dachte eben, dass ich .git extra "sagen muss", dass er die Versionen aktualisieren soll.

nein, git ist intelligent! ;)


WiZaRd hat geschrieben:Schön wäre hier doch, wenn ich eine Übersicht über meine Änderungen hätte... evtl. setze ich doch mal irgendeinen Server lokal auf, auch wenn das ja mit Kanonen auf Spatzen geschossen ist.

wie ich schon schrieb, guck in dein log. dort kannst du dir das log des aktuellen branches ansehen. da brauchst du keinen server der das exakt selbe repository hält, wie dein "lokales" repository. solange du also nicht verschiedene repositories an einem ort zusammenführen willst bringt dich ein server nicht weiter!


WiZaRd hat geschrieben:Ich habs ohne Delete gemacht - wozu auch, will ich ja nicht, die Files sollen ja dableiben. Das File das dann erstellt wird will .git nur leider auch immer einchecken :D

die option heißt so wie ich gesagt habe! das heißt nicht, dass er lokal löscht. im gegenteil! wenn du mal in die erstellte filterdatei rein schaust, dann hast du dort auch die möglichkeit die selbst zu verändern. könntest beispielsweise mal versuchen die datei auch selbst auszuschließen, wenn es dich stört, dass sie auch revisioniert wird. notfalls händisch.

WiZaRd hat geschrieben:Die Auswahl ist IMHO auch unzureichend, man sollte explizit bestimmte Dateien und Ordner ausschließen können, nicht nur einen Filter erstellen, der nachher evtl. zu viel oder zu wenig rausfiltert.

du kannst doch explizit dateien ausschließen! mach alle drei die ich gesagt habe und dann guck in die datei rein. du wirst feststellen, dass du jede mögliche angabe explizit auswählen kannst. ich denke auch, dass man gezielt dateien in unterordnern und unterordner ausschließen kann. im übrigen bezweifle ich, dass irgend eine versionskontrolle anders arbeitet!


WiZaRd hat geschrieben:Momentan ist es so, dass eigentlich alles korrekt aussieht... sofern die ignorierten Ordner kein Overlay bekommen. Werde jetzt nur mal mit den Revisions spielen müssen, dann stellt sich sicher raus, ob alles OK läuft.

das läuft! im grunde brauchst du ja nicht mal ein ignore, weil solange du die entsprechenden dateien nicht addest zum repository werden sie ignoriert bei commits! warnungen gibt es da, iirc, auch keine.

Stulle
Forenlegende
 
Beiträge: 1014
Registriert: So 5. Feb 2006, 09:55


Zurück zu Entwicklung

Wer ist online?

Mitglieder: Google [Bot]

cron