Suche Alternative zu GitHub

Hi, ich habe folgende Anforderungen:

Unterstuetzung von Multifile Repositories
Web Frontend zum Uploaden
Syntax Highlighting

Warum nicht GitHub?

Keinen Bock auf ein Extraprogramm zum Uploaden (welches es ausserdem nicht fuer Linux gibt).
Ist mir desweiteren zu ueberladen / komplex, um einfach nur Code zur Verfuegung zu stellen.
Ich brauche die Flexibilitaet, von mehreren Computern mit verschiedenen Betriebssystemen zugreifen zu koennen. Im Idealfall also via Browser.

Kennt Ihr da etwas passendes?

Danke,

Helmuth

Und die üblichen Verdächtigen? (Filehoster) Ist da nichts Passendes dabei? Kommt immer drauf an, ob das eine Insellösung, passend für dich sein soll, oder ob es eine Plattform sein soll, die auch andere in gleicher Form nutzen. Bei Letzterem ist Github wohl der Quasistandard.
Ist dann wie mit Whatsapp. Es ist unsicher, ne Datenkrake und alle meckern, aber wenn es 9 von 10 Leuten verwenden, muß man es auch haben, wenn man nicht x Messanger installieren will :wink:

Gruß Gerald

Ok, ich praezisiere: Ich will den Code gut lesbar angezeigt und downloadbar haben.

Damit fallen die Filehoster leider raus.

Für wen möchtest du die Daten zur Verfügung stellen?

Eventuell passt Dropbox

Es ist zwar nicht so angelegt, wie github, aber dennoch mit gewissen Einsparungen gut nutzbar. Habe das selber für mich auf allen Rechnern installiert. Somit habe ich überall den gleichen Projektstand zur Verfügung.

Des weiteren kann ich auch ganz bequem diese anderen Leuten zur Verfügung stellen, die über den Link bescheid wissen.

Upload/Download, Freigaben etc ist auch über das Webfrontend machbar. Syntax Highlightning unterstützt er bedingt.

Ordner:
https://www.dropbox.com/sh/5brz9kqr32gl1j7/AAByNetqVsk_AvJdPIvzsTcma?dl=0

Einzelne Datei:
https://www.dropbox.com/s/zlujax5ig8n8ik0/uart0.c?dl=0

Komplette Ordner können auch bequem als zip heruntergeladen werden, ähnlich git clone.

Danke, das sieht gut aus!

Warum nicht GitHub?

Keinen Bock auf ein Extraprogramm zum Uploaden (welches es ausserdem nicht fuer Linux gibt).

Hmmh, git wurde ursprünglich für Linux entwickelt. Wieso genau soll es das für Linux nicht geben?
Und wieso Extraprogramm? Du willst mir nicht weis machen, dass git bei Dir noch nicht installiert ist, oder?

Entweder verstehe ich Deine "Spezifikation" nicht, oder Du hast null Ahnung von GitHub.

Alternativen: Sourceforge, BitBucket, Cloudforge, etc.

Github ist ein Repository. Single File Repositories kenne ich nicht. Git arbeitet mit Github zusammen und war für Linux zuerst verfügbar, kommt ja auch von Linus persönlich. Ich kenne überhaupt kein einziges Repository bei dem Du ohne irgendein Programm etwas rein oder rausladen könntest.

Syntaxhighlighting hat mit Repositories erst einmal gar nichts zu tun.

Wenn Du Dropbox für gut genug befindest, dann brauchst Du kein Repository.

Du willst mir nicht weis machen, dass git bei Dir noch nicht installiert ist, oder?

Entweder verstehe ich Deine "Spezifikation" nicht, oder Du hast null Ahnung von GitHub.

Nein, git ist bei mir nicht installiert und ja, ich habe bisher null Ahnung von GitHub.

Als Einsteiger finde ich den Funktionsumfang erschlagend und vermeintlich triviale Funktionen finde ich nicht.

Z.B. einen Webfrontend Dateiupload, welcher nicht auf copy+paste hinauslaeuft, wobei auch noch die Formatierung verlorengeht und der Code jetzt beschissen aussieht unleserlich ist.

Ok, habe mittlerweile herausgefunden, dass die Linux Unterstuetzung vorzueglich ist. Hatte bisher nur von Win und Mac Installern gelesen.

Momentan geht es mir noch nicht um gemeinsames entwickeln und ich brauche vermutlich wirklich kein Repository.

Aber irgendwas, wo die Datein, welche aus den Arduino Tabs resultieren A) downloadbar und B) lesbar sind.

Und momentan scheue ich noch den Aufwand, mich nur dafuer in GitHub einzuarbeiten.

Mir fehlt eine Einfuehrung, welche wirklich bei Null anfaengt. Im Stil von "Das ist eine Axt. Damit kann man u.a. Baeume faellen, Tueren einschlagen oder Holz hacken. Wenn sie Baeume faellen moechten lesen sie bitte Tutorial A, zum Tueren Oeffnen Tutorial B usw..."

Ich habe eine Ahnung, was ein Commit ist, ein Brach, was forken bedeutet, aber kein belastbares Wissen. Ich braeuchte wirklich ein Tutorial fuer Idioten, welches erstmal mit Begriffsdefinitonen beginnt und mir die Probleme beschreibt, die ich dann loesen kann.

Ich kenne überhaupt kein einziges Repository bei dem Du ohne irgendein Programm etwas rein oder rausladen könntest.

Marktluecke? Ist das nicht total naheliegend und das erste, was jeder haben will? Einfach seine Dateinen reinschieben und fertig?! Bzw. anschauen, bei Bedarf downloaden und gut?

Ein Gefuehl von Unverstaendnis ueberwaeltigt mich!

Beste Gruesse

Helmuth

Ein Git-Tuorial für komplette Einsteiger wäre auch was für mich. Habe mir neulich ein Buch über GIT gekauft, aber das war wohl eher für Leute mit Infomatikstudium.
Grüße,

Sven

Falls wer was findet, hätte auch Interesse. Habe zwar ein Repo angelegt, aber die ist leer, da da Projekt inzwischen abgebrochen ist. Einziger Nachteil an github ist, das man allle Repos offenlegen muss. Andernfalls muss man 7€ im Monat berappen. Das ist es mir nicht wert. Hatte es eigentlich gedacht, um meine ganzen Code Schnipsel, fertigen Projekte etc. für MICH zu sichern. Hab inzwischen aber erst einmal alles in der Dbox

Ich braeuchte wirklich ein Tutorial fuer Idioten, welches erstmal mit Begriffsdefinitonen beginnt und mir die Probleme beschreibt, die ich dann loesen kann.

Ein kurzes Git-Tutorial findest Du hier (englisch):

http://git-scm.com/docs/gittutorial

In Deutsch gibt's das ganze noch etwas kompakter:

http://rogerdudler.github.io/git-guide/index.de.html

Auch wenn es nicht die Probleme beschreibt, die man mit git lösen kann, denn es geht einfach davon aus, dass Du die Probleme zur Genüge kennst.
Git ist ein Versions-Verwaltungssystem, d.h. Du kannst innerhalb Deines Projekts "zeitlich" umherspringen, wenn das nötig wird. Wenn die neue Funktionalität, die Du die letzte Woche implementiert hast, nicht wirklich erfolgreich war, kannst Du einfach zur Version von der Woche davor zurückkehren und dort weitermachen, wo noch alles funktionierte.
Git kann dies im Gegensatz zu den meisten anderen Versions-Verwaltungen (subversion, CVS, mercury, etc.) sowohl lokal als auch über einen zentralen Server eingesetzt werden. Auch der gemischte Betrieb (lokale Weiterentwicklung, zentrale Projekthaltung) ist explizit vorgesehen und gut unterstützt.
Am Anfang magst Du denken, dass dies alles völlig überrissen sei und Du es nicht brauchst, aber spätestens, wenn Du das erste Mal zum Code zurück springen kannst, der noch gut funktioniert, wirst Du nie mehr anders arbeiten wollen.

Dass Du damit dann auch einfach den Code über z.B. GitHub anderen zur Verfügung stellen kannst, ist dann nur noch die Krone drauf.

Danke, dass deutschsprachige Tutorial geht schonmal in die Richtung, dass ich damit was Anfangen kann. Aber wirklich ein Einführung zum was verstehen, und nicht nur tun, fände ich auch noch gut. Aber es sit auf alle Fälle mal ein Anfang. Am Besten installiere ich git einfach mal auf meinem Server, und auf meinem Notebook, und versuche es mal mit einem Projekt.

Grüße,

Sven

Danke pylon! Wieder ein paar Puzzelstueckchen, welche zu meinem Verstaendnis beitragen. Allerdings immer noch der 2. Schritt vor dem ersten.

Viele Begriffsdefinitonen fehlen bzw. werden als bekannt vorausgesetzt. Ich versuche es mal als Frage + Antwortsversuch zu beschreiben.

Repository? Das Projekt. Eine Onlinkopie der Summe von allen Dateien, die damit zu tun haben.

Auschecken??

Erstelle eine Arbeitskopie? Wozu? Die habe ich doch bereits auf meiner lokalen Festplatte.

Die 3 Instanzen eines Repos? Wozu?

Aenderungen vorschlagen / Commit? Wem soll ich was vorschlagen, wenn ich MEINEN Code aendere?

Branching? Warum so kompliziert? Ich habe eine lokale Kopie, veraendere oder ergaenze daran was, teste das, fertig. Wenn es funktioniert, ersetze ich den bisherigen Masterbranch. Falsch?

Wenn du dein lokales Repository nicht von einem entfernten geklont hast und du diese aber mit einem anderen Repository verbinden möchtest...

??

Releasetag? SVN?

Usw.

Auch diese Tutorials setzen voraus, dass man bereits weiss, worum es geht. Aber offensichtlich wissen nur professionelle Programmierer um diesen grundsaetzlich Arbeitsablauf und das warum.

Ich brauche eine Erklaerung auf dem Level von der Sendung mit der Maus: "Das hier ist der Peter und der schreibt gerade Software fuer einen Computer. Damit das immer alles genau so funktioniert, wie der Peter das will, verwendet er dabei nur noch GitHub, weil..."

Es tut mir leid, wenn ich hier wie ein Vollidiot dastehe und solche Fragen stelle, aber ich kenne die Antworten wirklich nicht.

Vielleicht waere es fuer Antworten hilfreich, dabei strikt zu trennen zwischen "ich allein schreibe an meinem Projekt" und "ein Team arbeitet gemeinsam an einem Projekt".

Waere dankbar fuer weitere Puzzlestuecke.

Beste Gruesse,

Helmuth.

Hi
Du darfst bei Sourcecode-Verwaltungssystemen (SVN ist eines, GIT ist ein weiteres, CVS ist veraltet aber auch noch bekannt) nicht davon ausgehen, dass du alleine am Code arbeitest. Stell dir vor du arbeitest mit mehreren Leuten an einem Projekt und jeder ändert irgendwas in den verschiedenen Dateien deines Projektes. Da kommt nach ein paar Tagen nur noch Müll raus weil jeder nicht auf dem aktuellen Änderungsstand der anderen ist. Und beim Zusammenfügen (Mergen) bricht die Hölle aus.
Ein Sourcecode-Verwaltungssystemen (abgekürzt SCM) hilft dir das Chaos unter Kontrolle zu bringen und eine Übersicht der ganzen Änderungen zu haben. Ohne ein solches System könnte man unmöglich halbwegs effizient und sicher mittlere und größere Software Projekte mit mehreren Entwickler durchführen.

Zu deinen Fragen:
"Auschecken??":
Ein neuer Entwickler kommt in das Projekt und holt sich damit zum ersten mal den aktuellen Stand des Projektes. Du kannst das mit einem geregelten Download vergleichen. Der aktuelle Stand wird runtergeladen und lokal gespeichert. Zusätzlich werden noch Versionsinformationen (unsichtbar) abgelegt. Damit weiss dein SCM welche Versionsstand du aktuell bearbeitest.
Später brauchst du immer nur zu updaten bzw. committen um den aktuellen Stand runterzuladen oder hochzuladen.

So Sachen wie Branching, Tagging, Änderung vorschlagen etc. brauchst du erstmal nicht.

Hoffe das hilft dir als weiteres Puzzelstückchen ein wenig weiter

Gruß
Jarny

Hoffe das hilft dir als weiteres Puzzelstückchen ein wenig weiter

Ja, tut es. Danke, dass Ihr so viel Geduld mit mir habt!

Beste Gruesse,

Helmuth

Habe GitHub fuer Win installiert.

Habe 2 neue Anwendungen auf dem Desktop: Git Shell und GitHub

GitHub geoeffnet und via GUI mit 3 Klicks ein neues Repository angelegt.

Dieses gesynced, voila, das Testrepo ist jetzt auf der GitHub Webseite sichtbar.

Repository wieder loeschen wollen via Win Programm - no way. Unmoeglich. Kein Menu, nichts.

Also Repo via Web Frontend geloescht - da ist es jetzt weg. Schoen.

Im Win Programm steht es noch drin. Das Programm versucht jetzt staendig zu syncen und findet natuerlich das Verzeichnis auf GitHub nicht mehr.

Ich will es nicht mehr haben! Deshalb habe ich es ja geloescht.

Wie werde ich den Mist (das Testrepo im Win Programm) wieder los?

Leicht entnervt

Helmuth

Ok, hat sich erledigt. Man muss das Verzeichnis von Hand auf der Festplatte loeschen, dann meckert das Programm noch einmal beim Oeffnen - bietet allerdings "remove" an...

Es gibt auch alternative Softwarelösungen die Git unterstüzen. Kennst du SourceTree? Dieses Programm bietet komfortable Möglichkeiten um GitHub zu nutzen.