Source Code Browsable veröffentlichen?



  • Ich sagte nicht das ich keins habe, ich sagte das ich keins Brauche 😉
    Ich habe ein lokales, das ist perfekt auf mich abgestimmt.
    Nun geht es wie schon geschrieben darum: Wie kann ich meinen Source veröffentlichen ohne alles manuell in Sync zu halten?
    Derzeit schiebe ich die Sourcen auf dem Server, und lasse eine php darauf los die den Inhalt im Browser anzeigt (gefiltert)
    Aber da gibt es bestimmt elegantere Lösungen...

    Ich passie die Liste mal an. Ich suche:

    Eine einfache möglichkeit Sourcecode zu publizieren wo ich sehr schnell alles aktualisieren kann.

    Anforderungen:
    - Einfaches Update der Sourcen (z.B. hoch laden per FTP),
    - Keine versions kontrolle,
    - Zugriff für jeden aus meiner Seite heraus (nur lesbar).



  • Wenn VCS und Doxygen ausscheiden, dann bastel Dir was mit GeSHi: http://qbnz.com/highlighter/



  • Was meinst du mit VCS? Versions Control System? Da habe ich ein lokales SVN am laufen.
    Ich merke aber gerade das ich anscheinend Doxygen mit Sandcastle verwechselt habe, dachte das man mit Doxygen auch normale Help files baut.
    Ich schau es mir mal an 🙂

    //Dazu
    Ich habe Doxygen mal probiert, ist nicht das was ich suche, Doxygen kann im prinzip das selbe wie Sandcastle.
    Mein Ziel ist es das andere den Sourcecode direkt einsehen können, also komplette Methoden mit Inhalt.
    (Xaml Dateien auch)

    //Nochmal dazu
    Einen Syntax Highlighter brauche ich auch nicht, Sourcecode posten könnte ich schon, nur dann habe ich das Problem das ich es Synchron halten muss, und genau das möchte ich doch vermeiden.

    Ist es so kompliziert was ich möchte?
    Ich habe eine Klasse "ArcPanel" und jeder soll direkt in diese Klasse rein schauen können, und wenn ich dort etwas ändere möchte ich es einfach nur hoch laden und das wars, ohne etwas zu Mergen oder Posts zu aktualisieren.



  • rüdiger schrieb:

    Für die meisten Versionskontrollsysteme gibt es doch Webfrontends, mit denen man sich den Code anschauen kann. Welches VCS nutzt du denn?

    Ansonsten könntest du einfach github oder sourceforge nutzen.

    Ich sehe jetzt erst deinen Kommentar.
    Ich benutze Subversion mit TortoiseSVN, aber nur lokal.
    Es auf meinem Server zu machen war mir bisher zu eigenartig. Habe einige Tutorials gelesen, aber es bisher nicht hin bekommen die Sourcen auf den Server speichern zu lassen.



  • Mach es doch einfach so wie ich. Nimm dir Webspace und aktivier das Indexing. Dann sieht das ganze so aus:
    http://www.michael-puff.de/Developer/Delphi/Units/
    Da brauchst du dich um nichts kümmern. Einfach Datei hochladen und fertig.



  • So wollte ich es auch machen, nur das ich nicht das Indexing aktiviere, das kann ich leider nicht nur für einen Order machen.
    Werde vermutlich eine einfache php Datei benutzen.



  • Source-Forge?



  • No chance.



  • Wozu fragst Du denn, wenn Du ohnehin schon weiszt, was Du machen magst?

    Mit verteilten VCS wie Git, Mercurial oder darcs ist das ganz bequem (die sind uebrigens auch lokal wesentlich angenehmer als SVN), da kannst Du einfach auf jeden x-beliebigen Server pushen und jeder kann sich Deinen Code ansehen. Auszerdem gibt es da auch praktische Dienste wie GitHub.

    Aber wenn Du schon weiszt, dass Du FTP+SVN+DirIndex/PHP-Index verwenden moechtest, verstehe ich nicht, wozu Du noch grosz fragst. Es gibt fertige Loesungen, die genau das, was Du machen moechtest, sehr elegant loesen. Du musst die natuerlich nicht verwenden. 🙂



  • nman schrieb:

    Wozu fragst Du denn, wenn Du ohnehin schon weiszt, was Du machen magst?

    Die php Datei ist eigentlich nur der fall-back.

    nman schrieb:

    Mit verteilten VCS wie Git, Mercurial oder darcs ist das ganz bequem (die sind uebrigens auch lokal wesentlich angenehmer als SVN), da kannst Du einfach auf jeden x-beliebigen Server pushen und jeder kann sich Deinen Code ansehen. Auszerdem gibt es da auch praktische Dienste wie GitHub.

    Ich verwende wie schon geschrieben SVN, damit habe ich schon versucht das zeug auf ein Server zu bekommen, habe es nicht geschafft, irgendwo war immer ein Problem.

    nman schrieb:

    Aber wenn Du schon weiszt, dass Du FTP+SVN+DirIndex/PHP-Index verwenden moechtest, verstehe ich nicht, wozu Du noch grosz fragst. Es gibt fertige Loesungen, die genau das, was Du machen moechtest, sehr elegant loesen. Du musst die natuerlich nicht verwenden.

    Ich suchte ja nach guten fertigen lösungen, habe aber bisher keine bekommen, dein GitHub war bisher das erste.

    Es ist so das ich mein SourceCode ständig warte und erweiter, entsprechend fallen solche lösungen wo ich etwas zippen und hochladen/aktualisieren muss weg.

    Bei SVN habe ich versucht Daten in einer SubDomain hoch zu bekommen, aber irgendwo war immer das korrekte Laden lassen nicht möglich.

    Kennst du eine gute Anleitung für Git/GitHub?

    //Dazu
    Gibt es für Git auch gute front ends?
    Tortoise gefällt mir da ich _keine_ commands in die Command Line eingeben muss, alles über einer GUI steuerbar. (Windows)

    //Nochmal dazu
    GitHub ist keine applikation für den eigenen Server sondern ein Dienst oder?
    Das währe blöd, wie kann man dann mit 2 Tastendrucks den Code aktualisieren?
    hmm



  • http://code.google.com/p/tortoisegit/
    http://github.com/guides/using-git-and-github-for-the-windows-for-newbies

    sourceforge oder code.google.com unterstützen auch SVN.

    //Nochmal dazu
    GitHub ist keine applikation für den eigenen Server sondern ein Dienst oder?
    Das währe blöd, wie kann man dann mit 2 Tastendrucks den Code aktualisieren?
    hmm

    GitHub ist ein Dienst. Aber du kannst git natürlich auch auf dem eigenen Server benutzen. Den Code aktualisierst du, in dem du ihn auf den Server pushst. Ist ein Klick bzw. Kommando.

    So schaut zB die Verzeichnisübersicht aus:
    http://github.com/ruediger/flusspferd

    Und so die Dateiansicht:
    http://github.com/ruediger/flusspferd/blob/ae9fc67b819aecfa78fb00be9255635a9d6bcbb7/programs/flusspferd.cpp

    Und so die Liste der Änderungen:
    http://github.com/ruediger/flusspferd/commits/master

    und so ein größerer Commit im Detail:
    http://github.com/ruediger/flusspferd/commit/ae9fc67b819aecfa78fb00be9255635a9d6bcbb7
    (in dem Fall mergen zweier branches)

    etc.

    btw. http://whygitisbetterthanx.com/



  • rüdiger schrieb:

    http://code.google.com/p/tortoisegit/
    http://github.com/guides/using-git-and-github-for-the-windows-for-newbies

    sourceforge oder code.google.com unterstützen auch SVN.

    Ich bekomm noch nichtmal mein jetziges SVN auf meinen server am laufen...

    rüdiger schrieb:

    GitHub ist ein Dienst. Aber du kannst git natürlich auch auf dem eigenen Server benutzen. Den Code aktualisierst du, in dem du ihn auf den Server pushst. Ist ein Klick bzw. Kommando.

    Achja? Wie? Ich finde keine anleitung.
    Ich möchte die Sourcen alles selber Hosten ohne mich irgendwo an zu melden bzw meinen Source auf einen fremd-server zu schieben.

    rüdiger schrieb:

    btw. http://whygitisbetterthanx.com/

    blablabla

    Ich habe über Gut gelesen, und es heißt:

    Wikipedia schrieb:

    Git ist eine freie Software zur verteilten Versionsverwaltung von Dateien.

    Heißt das das die Sourcen auf verschiedenen Server gehostet werden? Wie gesagt, ich suche etwas was auf meinem eigenen Server gehostet ist (zugriff nur per sub domain)
    Ich hätte keine schmerzen damit mein VCS zu wechseln.



  • CSL schrieb:

    Ich bekomm noch nichtmal mein jetziges SVN auf meinen server am laufen...

    Darum ist es ja praktisch, dass Du deren SVN verwenden kannst, und kein eigenes brauchst.

    rüdiger schrieb:

    GitHub ist ein Dienst. Aber du kannst git natürlich auch auf dem eigenen Server benutzen. Den Code aktualisierst du, in dem du ihn auf den Server pushst. Ist ein Klick bzw. Kommando.

    Achja? Wie? Ich finde keine anleitung.

    Wie hast Du denn gesucht?

    http://wiki.github.com/multitheftauto/multitheftauto/how-to-use-tortoisegit

    Ich möchte die Sourcen alles selber Hosten ohne mich irgendwo an zu melden bzw meinen Source auf einen fremd-server zu schieben.

    Mit Git hast Du Dein Repo sowohl lokal komplett vorliegen, als auch remote, zB. eben bei GitHub oä.

    Heißt das das die Sourcen auf verschiedenen Server gehostet werden? Wie gesagt, ich suche etwas was auf meinem eigenen Server gehostet ist (zugriff nur per sub domain)
    Ich hätte keine schmerzen damit mein VCS zu wechseln.

    "Verteilt" heißt, dass die Sourcen sowohl bei Dir lokal als auch bei GitHub, als auch am Laptop Deiner Tante liegen können, sofern die sich Git installiert und einen Klon zieht.

    Wenn Du GitHub nicht verwenden möchtest, kannst Du irgendein Webinterface für Git auf Deinem Server installieren, wie zB. GitWeb oder Gitorious.

    Aber einfach auch auf GitHub zu pushen ist einfacher und sinnvoller.



  • nman schrieb:

    CSL schrieb:

    Ich bekomm noch nichtmal mein jetziges SVN auf meinen server am laufen...

    Darum ist es ja praktisch, dass Du deren SVN verwenden kannst, und kein eigenes brauchst.

    Schrieb ich schon das ich mein Source auch auf meinen Server haben will 😉

    nman schrieb:

    rüdiger schrieb:

    GitHub ist ein Dienst. Aber du kannst git natürlich auch auf dem eigenen Server benutzen. Den Code aktualisierst du, in dem du ihn auf den Server pushst. Ist ein Klick bzw. Kommando.

    Achja? Wie? Ich finde keine anleitung.

    Wie hast Du denn gesucht?

    http://wiki.github.com/multitheftauto/multitheftauto/how-to-use-tortoisegit

    Das TortoiseGit habe ich schon gesehen, währe für lokale einsatzzwecke identisch mit SVN weswegen ein wechsel dann sinnfrei währe.
    Was ich gesucht habe ist, wie kann ich auf meinem Server etwas dafür Installieren.
    Ich habe bezahlen WebSpace mit Confixx und FTP zugang, unzählige sub domains sind auch möglich, derzeit habe ich auch noch zwei MySQL Datenbanken frei.
    Ich dacht das es Software gibt welche ich per setup.php installieren und einrichten kann, und ich die Sourcen dann einfach mittels einen FTP link hoch schieben kann.
    Das hoch laden sollte schnell gehen und einfach sein, derzeit muss ich nur CHTL+F->Enter->F5->Enter->Done.

    nman schrieb:

    Ich möchte die Sourcen alles selber Hosten ohne mich irgendwo an zu melden bzw meinen Source auf einen fremd-server zu schieben.

    Mit Git hast Du Dein Repo sowohl lokal komplett vorliegen, als auch remote, zB. eben bei GitHub oä.

    Lokal ist mir klar, da kann ich gleich bei SVN bleiben, wenn ich den fertigen Dienst GitHub verwende lade ich die Sourcen doch auf einen Fremd-Server?!

    nman schrieb:

    Heißt das das die Sourcen auf verschiedenen Server gehostet werden? Wie gesagt, ich suche etwas was auf meinem eigenen Server gehostet ist (zugriff nur per sub domain)
    Ich hätte keine schmerzen damit mein VCS zu wechseln.

    "Verteilt" heißt, dass die Sourcen sowohl bei Dir lokal als auch bei GitHub, als auch am Laptop Deiner Tante liegen können, sofern die sich Git installiert und einen Klon zieht.

    Das hat man doch bei SVN (sofern man es auf einen Server bekommt) auch, wo ist der unterschied?

    nman schrieb:

    Wenn Du GitHub nicht verwenden möchtest, kannst Du irgendein Webinterface für Git auf Deinem Server installieren, wie zB. GitWeb oder Gitorious.

    Aber einfach auch auf GitHub zu pushen ist einfacher und sinnvoller.

    Komisch, ich finde nirgends eine Anleitung für meinem Fall.



  • CSL schrieb:

    Mit Git hast Du Dein Repo sowohl lokal komplett vorliegen, als auch remote, zB. eben bei GitHub oä.

    Lokal ist mir klar, da kann ich gleich bei SVN bleiben, wenn ich den fertigen Dienst GitHub verwende lade ich die Sourcen doch auf einen Fremd-Server?!

    - Bei SVN hast Du nur das Working-Directory lokal, nicht das komplette Repo.
    - Äh ja, Fremd-Server… Viel fremder als der von Deinem Hoster. 🙄

    nman schrieb:

    "Verteilt" heißt, dass die Sourcen sowohl bei Dir lokal als auch bei GitHub, als auch am Laptop Deiner Tante liegen können, sofern die sich Git installiert und einen Klon zieht.

    Das hat man doch bei SVN (sofern man es auf einen Server bekommt) auch, wo ist der unterschied?

    Bei SVN hast Du jeweils nur das Working Directory. Bei Git ist jeder Klon ein vollständiges Repo, zu dem Du pushen und von dem Du pullen kannst.

    Komisch, ich finde nirgends eine Anleitung für meinem Fall.

    Weil Du offensichtlich keine Ahnung hast, was Dein Fall sein soll.

    "Natürlich würde ich auch auf ein anderes VCS umsteigen. Es muss genauso wie jetzt sein. Aber wenn es genauso ist, kann ich einfach alles weiterhin wie jetzt machen, weil es ja keine Veränderung gäbe."

    Lies bitte mal was zu verteilten Versionskontrollsystemen nach und komm dann wieder.

    Bis dahin verwendest Du am besten irgendeine zusammengefrickelte PHP-Lösung.



  • Bei meinem Hoster weiss ich wenigstens wo die Dateien sind, kann sie jederzeit Sichern, verschieben und Löschen, alles unter meiner Kontrolle.
    Ich weiß auch wann welche Backups der Daten gemacht werden, und kann sie auch nach meinem wunsch hin wieder her stellen lassen.
    Bei space auf anderen muss ich mich darauf verlassen das das alles gemacht wird.
    Bei anderen muss ich mich anmelden, und oft kann man nicht alles zurück ziehen, falls ich es mir anders überlege.

    Ich bin von der Arbeit mit Perforce verwöhnt, ein wirklich sehr angenehmes System, alles richtig lokal, auch einsehbar, und durch die angenehme GUI sehr gut zu verwalten. Ich möchte keine Comando zeile eingeben.

    Ich habe mir Git mal an gesehen, fands irgendwie komisch.
    Das Branching system verwirrt mich.
    Man kann über die GUI branches zwar durch blättern, aber wie kann ich eine bestimmte Datei mit einer anderen Datei eines anderen Branches vergleichen, hab ich alles nicht hin bekommen.
    In Perforce schau ich mir einfach den respository tree der Datei oder des verzeichnisses an, sehe auf einen Blick was es alles gibt, kann dort auch die Labels und Comments ein sehen und diese per Drag&Drop miteinander vergleichen.
    Zudem kann ich alles frei nach belieben gleichzeitig in verschiedene Branches auschecken, und nachdem die Arbeit erledigt ist es einfach wieder Submitten.
    Sobald ich die GUI schließe weiß ich das die Daten sich dann nicht mehr ändern.
    Das ist alles recht unübersichtlich bei Git, ich muss wirklich wissen was wo liegt, und wie es dahin kam, es gibt einfach keine zentrale anlaufstelle zum browsen.

    Ich habe bei Git mit Rechtsklick ein Repository erstellt, dann war die Frage, wie erstell ich ein Branch.
    Ich habe CreateBranch im Context menu gefunden und eins erstellt, war dann aber wieder verwirrt "Wo ist es jetzt?"
    Habe dann durch rum Probieren irgendwie geschaft die Sourcen dort zu submitten, und ueber Start GUI here hatte ich erst gar nichts gesehen, dort fand ich dann die möglichkeit des Branch blätterns, aber habe dort dann kein Branch tree gesehen, weder das des Masters noch das der Dateien, auch Labels und revisionen blieben mir verborgen.

    > Weil Du offensichtlich keine Ahnung hast, was Dein Fall sein soll.
    Habe ich doch oben bereits geschildert was mir zur verfügung steht.

    //Dazu
    Bin weter am rum fummeln.
    Ich habe mit einer Datei drei submits.
    Wie kann ich das Dritte submit der Datei mit dem ersten vergleichen?
    Wie kann ich den kompletten folder mit einem ausser den vorherigen vergleichen?
    Wie kann ich in ein Branch in einem bestimmten Ordner aus checken und einen weiteren Branch in einen anderen Ordner?



  • CSL schrieb:

    Habe ich doch oben bereits geschildert was mir zur verfügung steht.

    Wie gesagt: Nimm irgendein PHP-Skript oä.



  • Falls es jemand noch nicht kennt: Mit gitosis gibt es eine sehr bequeme Möglichkeit, Git-Projekte und Zugriffe zu verwalten.


Anmelden zum Antworten