« Drukwerk en de rest van vandaag | Main | Rsync via ssh »

13 april 2005

Windows vs. Linux (vs. moi)

Vandaag ben ik begonnen om het idee van Marko (om CMS Deluxe pagina's die gegenereerd worden, direct in CVS te zetten) vorm te geven.
Zoals het hoort, begon ik met de unittests :-)
Maar daar bleek al snel een probleem op te doemen: vanuit PHP kan je eenvoudig een commandline commando uitvoeren. Onder Linux doe je bijvoorbeeld "shell_exec('cvs status')", maar onder Windows werkt dat niet 1-2-3....
De eerste stap was eenvoudig: zorgen dat de commandline de CVS client kan vinden. Dit kan door je path-variabele aan te passen en het pad naar cvs.exe in je tortoise-map te zetten.
Stap 2 was ervoor zorgen dat de cvs client ook met ssh overweg kan (als wij bijvoorbeeld een pserver zouden gebruiken, dan was deze stap niet nodig geweest). Na veel getest bleek dit te kunnen door een extra omgevingsvariabele aan te maken, genaamd CVS_EXT, met als waarde:
"C:\Program Files\TortoiseCVS\TortoisePlink.exe" %u@%h

%u = de username uit je cvsroot
%h = de hostname uit je cvsroot
Na dit alles bleek dat vanaf de Windows commandline de cvs commando's werken, maar vanuit een php script (het doel van dit hele verhaal) nog steeds niet. Maar dat is een probleem voor morgen. Wordt vervolgd dus...

Posted by bart at 13 april 2005 16:47

Comments

Ik ben aan het denken dat er misschien een veel simpeler manier is. Ik ben aant denken dat je wellicht lokaal een cvs server kunt draaien.

Ik ben ook aan het denken dat het alleen om html files gaat. Ik ben aant denken dat html files tekst files zijn. Ik ben aant denken dat CVS alleen maar bijhoud welke regels er veranderen. Ik ben aant denken dat unix diff dat simpel kan weergeven. Ik ben aant denken dat daar misschien al een bestaande module voor is of dat anders de sourcecode van gnu diff openbaar is of dat er een windowsversie voor is. Ik ben aant denken dat er ook een gnu patch is (die het omgekeerde van diff doet) Ik ben ook aan het denken dat we deze optie (content in cvs) misschien nu nog niet nodig hebben? Ik ben aant denken dat als we op zeus draaien, dit al veel makkelijker wordt?

Posted by: Marko at 14 april 2005 01:08

Found it, it's in beta tho....
http://pear.php.net/package/Text_Diff/

Posted by: Marko at 14 april 2005 01:10

Wat dacht je van subversion inplaats van CVS.
http://subversion.tigris.org/
Subversion kan volledig via http worden aangestuurd?

Posted by: Marko at 14 april 2005 01:29

Post a comment




Remember Me?