Sourcen verewigen für Tutorial
-
- Beiträge: 6918
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Sourcen verewigen für Tutorial
Da ich an einem Tutorial am erstellen bin, möchte ich die Source für andere User verewigen.
Momentan liegen die Sourcen auf einer Gratis-Homepage. Nur das Problem dabei, wen man dort längere Zeit nichts mehr macht, werden die Daten dort gelöscht.
Ich habe mal GIT angeguckt, dies ist aber sehr komplex, nur um eine ZIP-Datei abzulegen.
SourceForge habe ich auch angeguckt, aber dort muss man sich irgendwie als Firma registrieren.
Hat jemand eine gute Idee ?
Der Link zum Tutorial:
http://www.lazarusforum.de/viewtopic.php?f=29&t=11373
Momentan liegen die Sourcen auf einer Gratis-Homepage. Nur das Problem dabei, wen man dort längere Zeit nichts mehr macht, werden die Daten dort gelöscht.
Ich habe mal GIT angeguckt, dies ist aber sehr komplex, nur um eine ZIP-Datei abzulegen.
SourceForge habe ich auch angeguckt, aber dort muss man sich irgendwie als Firma registrieren.
Hat jemand eine gute Idee ?
Der Link zum Tutorial:
http://www.lazarusforum.de/viewtopic.php?f=29&t=11373
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
Re: Sourcen verewigen für Tutorial
github oder sourceforge. Dass sourceforge nur Firmen nimmt, ist falsch. Solange (bei beiden Hostern) die Quelltexte OpenSource sind, ist der Speicher kostenlos. Wenn du auf Windows wärst, würde ich sagen, installiere dir TortoiseGit oder TortoiseSvn, dann geht alles mit ein paar Klicks. Auf Linux musst du ein paar git und svn Befehle lernen - aber das kannst du doch.
Eine zip-Datei würde ich da nicht hochladen, sondern die einzelnen Projekte mit den Einzeldateien. Damit kannst du jederzeit zu vorigen Versionen zurückgehen.
Eine zip-Datei würde ich da nicht hochladen, sondern die einzelnen Projekte mit den Einzeldateien. Damit kannst du jederzeit zu vorigen Versionen zurückgehen.
-
- Beiträge: 6918
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Sourcen verewigen für Tutorial
Das mit den Einzeldateien fände ich auch besser.Eine zip-Datei würde ich da nicht hochladen, sondern die einzelnen Projekte mit den Einzeldateien. Damit kannst du jederzeit zu vorigen Versionen zurückgehen.
Auf SourceForge sind meistens ZIP oder Pakete vorhanden, und auf GIT einzel Dateien.
Wen ich die GIT von fpcupdelux angucke, dies sieht sehr sauber aus. Als Anwender kann man dann das Ganze auch als ZIP haben.
Vielleiocht geht es mit Wine oder in der VB.Wenn du auf Windows wärst, würde ich sagen, installiere dir TortoiseGit oder TortoiseSvn, dann geht alles mit ein paar Klicks.
Jetzt habe ich es gerade gesehen, mit SVN wäre es eine dritte Variante.
SVN habe ich schon mehrfach verwendet, zB. um die Lazarus-Source zu saugen.
Geht dies mit dem Upload etwa gleich einfach ?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: Sourcen verewigen für Tutorial
SVN würde ich nicht verwenden, da dies ein zentrales Repository, welches immer erreichbar ist, bedingt. In git sind alle clones (= Repositories) gleichberechtigt. git ist auch gar nicht kompliziert wenn man das Prinzip verstanden hat und keine ausgefallenen Sachen macht, siehe hier:
http://www.lazarusforum.de/viewtopic.php?f=53&t=10809
Als git-hoster empfehle ich GitLab:
https://gitlab.com/users/sign_in
GitLab erlaubt auch kostenlose private (=nicht öffentlich zugängliche) Repositories und unterliegt nicht USA-Recht.
Bei allfälligen Problemen frage einfach hier.
http://www.lazarusforum.de/viewtopic.php?f=53&t=10809
Als git-hoster empfehle ich GitLab:
https://gitlab.com/users/sign_in
GitLab erlaubt auch kostenlose private (=nicht öffentlich zugängliche) Repositories und unterliegt nicht USA-Recht.
Bei allfälligen Problemen frage einfach hier.
-
- Beiträge: 206
- Registriert: Di 10. Nov 2009, 18:49
- OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x
- CPU-Target: 32Bit/64bit
Re: Sourcen verewigen für Tutorial
Meine Erfahrungen mit git sind im Vergleich zu svn ziemlich schlecht. Für einige Aktionen braucht man mehr Befehl als für svn. Ich habe auch ein besonders Talent das Repository in einen Zustand zu bringen, aus dem ich mit den normalen Befehlen nicht weiterkomme, die Fehlermeldungen auch überhaupt nichts bringen. Die grafischen Interfaces haben da auch nicht geholfen. Erstmal google anschmeißen, ist maximal nervig. Bei svn gibt es mit dem svn book eine deutlich bessere Dokumentation. Viele Aktionen in git liegen funktional nahe aneinander, wie z. B. clone und fork, commit und push, merge und rebase. Da ist es als Anfänger nicht einfach, die auseinander zu halten und das richtige zu nehmen. Die Syntax von git ist suboptimal, usw. (https://stevebennett.me/2012/02/24/10-t ... -about-git)mse hat geschrieben:SVN würde ich nicht verwenden, da dies ein zentrales Repository, welches immer erreichbar ist, bedingt. In git sind alle clones (= Repositories) gleichberechtigt. git ist auch gar nicht kompliziert wenn man das Prinzip verstanden hat und keine ausgefallenen Sachen macht, siehe hier:
http://www.lazarusforum.de/viewtopic.php?f=53&t=10809
Als git-hoster empfehle ich GitLab:
https://gitlab.com/users/sign_in
GitLab erlaubt auch kostenlose private (=nicht öffentlich zugängliche) Repositories und unterliegt nicht USA-Recht.
Bei allfälligen Problemen frage einfach hier.
Das zentrale Repository ist für mich auch kein Problem mehr, seit es im ICE WLAN gibt. Bleibt zwar noch die Regionalbahn, aber. Leider ist das Interface von Sourceforge von Version zu Version zwar vielleicht hübscher, aber funktional immer schlechter geworden.
MiSchi macht die fink-Pakete
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: Sourcen verewigen für Tutorial
Da muss irgend etwas gründlich schief gegangen sein. Hast du denn das git Grundprinzip mit den SHA's verstanden?
Die offizielle git Dokumentation ist hier:
https://git-scm.com/docs
Ein "git book" gibt es auch:
https://git-scm.com/book/en/v2
Die offizielle git Dokumentation ist hier:
https://git-scm.com/docs
Ein "git book" gibt es auch:
https://git-scm.com/book/en/v2
-
- Beiträge: 6918
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Sourcen verewigen für Tutorial
Ich hatte es vor einem ½ Jahr schon mal mit GIT probiert.
Als Notiz habe ich folgende Befehle aufgehoben.
Nur, wen ich es nochmals probieren will, kommt bei der ersten Zeile schon ein Fehler. /n4800 ist ein Mount-Point zu meiner NAS, auf der sich auch die Daten befinden.
Ist dies der falsche Weg um die aktuelle Version hoch zu laden ?
Als Notiz habe ich folgende Befehle aufgehoben.
Code: Alles auswählen
git remote add origin https://github.com/sechshelme/Lazarus-OpenGL-3.3-Tutorial.git
git add .
git commit
git push -u origin master
Code: Alles auswählen
$ git remote add origin https://github.com/sechshelme/Lazarus-OpenGL-3.3-Tutorial.git
fatal: Not a git repository (or any parent up to mount point /n4800)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: Sourcen verewigen für Tutorial
Ja, zuerst musst du ein lokales git repository erzeugen. Da das repository auf GitHub schon existiert, erzeuge eine lokale Kopie in ein leeres Verzeichnis (<meingitrepo>).
(Punkt am Ende nicht vergessen!)
Oder in MSEgit:
- 'File'-'Clone git repo'.
http://mseide-msegui.sourceforge.net/pics/git1.png
Danach sieht es so aus:
http://mseide-msegui.sourceforge.net/pics/git2.png
Klicke in die 'A'-Spalte im rechtem Fenster bei "master" um die aktuelle remote Branch zu aktivieren.
Nun können die Dateien in <meingitrepo> durch die aktuellen ersetzt werden und zusätzliche ins Repository aufgenommen werden.
Beispielsweise habe ich github.txt geändert und github2.txt hinzugefügt. Ctrl+R frischt die Anzeige auf:
http://mseide-msegui.sourceforge.net/pics/git3.png
RightClick-'Add' auf github2.txt um die Datei aufzunehmen:
http://mseide-msegui.sourceforge.net/pics/git4.png
'git'-'Commit/Stage/Unstage all' um den Zustand im lokalen Repository festzuhalten:
http://mseide-msegui.sourceforge.net/pics/git5.png
'Commit' führt das Kommando aus.
Nun kann der Zustand mit 'git'-'Push to origin/master' zu GitHub übertragen werden.
Code: Alles auswählen
cd <meingitrepo>
git clone https://github.com/sechshelme/Lazarus-OpenGL-3.3-Tutorial.git .
Oder in MSEgit:
- 'File'-'Clone git repo'.
http://mseide-msegui.sourceforge.net/pics/git1.png
Danach sieht es so aus:
http://mseide-msegui.sourceforge.net/pics/git2.png
Klicke in die 'A'-Spalte im rechtem Fenster bei "master" um die aktuelle remote Branch zu aktivieren.
Nun können die Dateien in <meingitrepo> durch die aktuellen ersetzt werden und zusätzliche ins Repository aufgenommen werden.
Beispielsweise habe ich github.txt geändert und github2.txt hinzugefügt. Ctrl+R frischt die Anzeige auf:
http://mseide-msegui.sourceforge.net/pics/git3.png
RightClick-'Add' auf github2.txt um die Datei aufzunehmen:
http://mseide-msegui.sourceforge.net/pics/git4.png
'git'-'Commit/Stage/Unstage all' um den Zustand im lokalen Repository festzuhalten:
http://mseide-msegui.sourceforge.net/pics/git5.png
'Commit' führt das Kommando aus.
Nun kann der Zustand mit 'git'-'Push to origin/master' zu GitHub übertragen werden.
-
- Beiträge: 6918
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Sourcen verewigen für Tutorial
Code: Alles auswählen
git clone [url]https://github.com/sechshelme/Lazarus-OpenGL-3.3-Tutorial.git[/url] .
Mein aktuellen Daten habe ich in diesen Ordner geladen.
Dann habe ich folgendes gemacht:
Code: Alles auswählen
$ git add .
$ git push -u origin master
Username for 'https://github.com': sechshelme
Password for 'https://sechshelme@github.com':
Branch master konfiguriert zum Folgen von Remote-Branch master von origin.
Everything up-to-date
$
was habe ich jetzt noch vergessen ?
Dies geht auch nicht:
Code: Alles auswählen
$ git remote add origin [url]https://github.com/sechshelme/Lazarus-OpenGL-3.3-Tutorial.git[/url]
fatal: externes Repository origin existiert bereits
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: Sourcen verewigen für Tutorial
Es fehlt "commit" nach "add ." um den Zustand festzuhalten.
-
- Beiträge: 6918
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Sourcen verewigen für Tutorial
Es ist tatsächlich an commit gelegen, obwohl dies nur für einen Kommentar ist.
Reichen in Zukunft diese 3 Kommandos für eine Aktualisierung ?
Was mir ein Rätsel ist, wie kommt das Arduino-Zeugs in meinen Account ?
Dieser ist schon 3 Jahre alt, aber ich habe mich erst vor einem ½ Jahr angemeldet.
https://github.com/sechshelme
Reichen in Zukunft diese 3 Kommandos für eine Aktualisierung ?
Code: Alles auswählen
git add .
git commit -m "test"
git push
Dieser ist schon 3 Jahre alt, aber ich habe mich erst vor einem ½ Jahr angemeldet.
https://github.com/sechshelme
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
- af0815
- Lazarusforum e. V.
- Beiträge: 6780
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Sourcen verewigen für Tutorial
Du hast scheinbar einen Fork erstellt = Kopie eines fremden Repo in deinem Account. Dazu muss man auf einem anderen (fremden) Repro nur auf Fork gehen und Ok sagen, dann hat man eine Kopie in seinem Repo, das man dann auch ändern kann wenn man will.Mathias hat geschrieben:Was mir ein Rätsel ist, wie kommt das Arduino-Zeugs in meinen Account ?
Dieser ist schon 3 Jahre alt, aber ich habe mich erst vor einem ½ Jahr angemeldet.
https://github.com/sechshelme
Andreas
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: Sourcen verewigen für Tutorial
Mathias, ich rate dir dringend git bei der täglichen Arbeit zu verwenden und nicht nur als unverstandenes Archiv-Tool. Bitte siehe nochmals hier:Mathias hat geschrieben:Es ist tatsächlich an commit gelegen, obwohl dies nur für einen Kommentar ist.
http://www.lazarusforum.de/viewtopic.php?f=53&t=10809
Du solltest auch eine ".gitignore"-Datei anlegen.
"commit" bildet die Quersumme (SHA) über alle Daten des aktuellen Zustandes und speichert ihn zusammen mit dem Kommentar und der SHA des Vorgängers in der Repository Datenbank, das sind die Dateien im ".git" Verzeichnis. Dieser Zustand kann nun mit "push" an andere Repositories übertragen werden. "add" ist eine Zwischenstufe wo geänderte und neue Dateien zum committen bereitgestellt werden ("stage"). In MSEgit sieht es nach "add ." so aus:
http://mseide-msegui.sourceforge.net/pics/git6.png
http://mseide-msegui.sourceforge.net/pics/git7.png
Der MSEgit 'git'-'Commit/Stage/Unstage all'-'Commit' Button kombiniert "add" und "commit" mit den gewählten Dateien.
Ja.
Reichen in Zukunft diese 3 Kommandos für eine Aktualisierung ?Code: Alles auswählen
git add . git commit -m "test" git push
-
- Beiträge: 6918
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Sourcen verewigen für Tutorial
Da hast du recht. somit gibt es ein Backup der Tutorials.Mathias, ich rate dir dringend git bei der täglichen Arbeit zu verwenden und nicht nur als unverstandenes Archiv-Tool.
Eine gute Idee, es muss nicht aller Mist hoch geladen werden.Du solltest auch eine ".gitignore"-Datei anlegen.
Stimmt dies, wen man GIT richtig versteht, kann man GIT auch direkt im Arbeits-Verzeichnis anwenden ?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
- af0815
- Lazarusforum e. V.
- Beiträge: 6780
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Sourcen verewigen für Tutorial
Ich verwende GIT für alle alles mögliche. Es ist auch sinnvoll mehrer GIT repos zu haben. Damit kann ich auch zwischen den Rechnern wechseln.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).