GNU Arch workshop von Nebukadneza
23:06 -!- Nebukadneza [~daddel9@dsl-213-023-052-086.arcor-ip.net] has joined #linux.de.workshop 23:06 < Nebukadneza> rehi 23:06 < andoo> hi 23:07 < gnarf> Nebukadneza: der python.de channel bleibt jetzt langfristig (hoffe ich) 23:07 < Nebukadneza> k 23:07 < Nebukadneza> werd auch reinkommn 23:07 < Nebukadneza> so ... hat jetzt noch jemand lust auf den tla workshop 23:07 < revenger__> klar 23:07 < Nebukadneza> k 23:07 -!- schaf [schaf@merkur.saurbier.net] has joined #linux.de.workshop 23:07 < Nebukadneza> bin sofort soweit 23:08 < schaf> schiess los *drängel* 23:08 < Nebukadneza> jaja sekunde 23:08 < Nebukadneza> komm grad erst ausm reallife 23:09 < gnarf> loslos ;) 23:09 < andoo> kannst gerne beim init-tree weitermachen ;) 23:09 < Nebukadneza> lol 23:09 < Nebukadneza> achso genau 23:09 < andoo> da bin ich gerade und hatte keine lust weiter zu experimentieren 23:09 < Nebukadneza> fuer alle, die gestern schon den misslungenen versuch (dank versionskonflikt aufm zweiten desktoprechner von mir) mitgemacht haben: rm -rf ~/.arch-params/ 23:09 < andoo> ich hab da lieber einen subversion server aufgebaut :) 23:10 < schaf> bevor ihr anfangt, sind die sachen vom letztem mal schon im wiki? 23:10 < Nebukadneza> ne 23:10 < Nebukadneza> die von diesem mal kommen ins wiki 23:10 < schaf> ok mal sehen ob ich euch dann folgen kann :) 23:10 < gnarf> und wenn das so viele sind, wäre ich fast für den grebrauch von +m oder allgemeines benehmen 23:10 < Nebukadneza> wir hoffen auf allgemeines benehmen 23:11 < revenger__> ok verzeichnis gelöscht 23:12 < Nebukadneza> ok 23:12 < Nebukadneza> also erstmal: haben alle gpg mit einem schluessel aufm rechner? 23:12 < Nebukadneza> (und tla 1.2pre3 natuerlich auch) 23:13 < revenger__> hmm 23:13 < revenger__> ich schon 23:13 < Nebukadneza> *sich an alle wend* 23:13 < Nebukadneza> *vorallem an ThomasWaldmann falls er tla nochnich kennt* 23:14 < gnarf> Nebukadneza: keine sorge, er kennt tla gut :) 23:14 < ThomasWaldmann> Nebukadneza: rat mal wer LinuxWiki:arch geschrieben hat ;) 23:14 < Nebukadneza> ah ok *g 23:14 < Nebukadneza> ThomasWaldmann: okeh ... du 23:14 < Nebukadneza> is trotzdem recht alt 23:14 < Nebukadneza> na egal 23:14 < ThomasWaldmann> daran siehst du, wie lange ich arch benutze ;) 23:14 < Nebukadneza> also ... wenn alle gpg und tla haben koennen wir loslegen 23:15 < Nebukadneza> ThomasWaldmann: kann man auch so interpretieren 23:15 < Nebukadneza> als erstes mal will ich fuer die nicht von gestern (*g) erklaeren, was tla ueberhaupt ist. 23:15 < Nebukadneza> kurz gesagt: tla ist die c implementation von gnuarch 23:15 < Nebukadneza> lang gesagt" 23:16 < revenger__> in was is gnuarch geschrieben? 23:16 < Nebukadneza> gnuarch ist der "standard" 23:16 < genera> (ich les nur mit, ok? und nein, gpg hab ich nicht. öh jedenfalls ohne key:-) 23:16 < revenger__> ah 23:16 < Nebukadneza> es gibt ausser tla noch eine bash implementation, von der ich regelmaessig den namen vergess 23:16 < revenger__> genera: brauchst ne kurze einweisung in gpg? 23:17 < revenger__> wie erstell ich meinen key in einer minute :) 23:17 < genera> neinein 23:17 < revenger__> ok 23:18 < Nebukadneza> tla ist ein system, mit dem man seine sourcen auf einem lokalen dateisystem, ftp, webdav, http oder sftp sortiert lagern kann. die sourcen werden als einzelne diff patches von dem patch jeweils eins davor gespeichert, so dass man immerwieder auf eine beliebige stelle in der entwicklungsgeschichte zurueckspringen kann, falls man ein fehler eingebaut hat (in seinen source) 23:18 < gnarf> Nebukadneza: btw. kann man die diffs auch so einfach extrahieren? 23:19 < Nebukadneza> natuerlich 23:19 < gnarf> danke 23:19 < Nebukadneza> sind tgz's in denen die diffs enthalten sind 23:19 < Nebukadneza> also - man kann wie gesagt die sourcen mit readwrite support auf lokalem fs, ftp, sftp und webdav lagern. 23:20 < Nebukadneza> bei lokalem fs wird einfach der pfad fuer das archiv mitgegeben (archiv werde ich gleich erklaeren) 23:20 < Nebukadneza> bei sftp wird sftp://user@host/ mitgegeben 23:20 < Nebukadneza> bei ftp wird ftp://user:pw@host/ mitgegeben 23:21 < Nebukadneza> ich muss gestehen, dass ich webdav nochnicht getestet habe, da ich keine zeit hatte webdav aufzusetzen 23:21 < schaf> kurze zwischenfrage: kann man es auch vermeiden user und passwort bei sftp bzw ftp mitzugeben? 23:21 < Nebukadneza> bei sftp ja 23:21 < schaf> ähm in der url mitzugeben 23:21 < Nebukadneza> bei ftp leider nein 23:22 < schaf> danke 23:22 < Nebukadneza> bei sftp musst du nur nutzer mitgeben 23:22 < Nebukadneza> ein archiv ist ein verzeichniss, in dem tla einige metainformationen speichert. im archiv werden auch die verschiedenen projekt trees (dazu spaeter mehr) abgelegt 23:24 < Nebukadneza> jetzt hat ein vorteil, wer gpg mit einem key zur hand hat: er kann signierte archive erstellen. d.h. der nutzer, der spaeter sourcecode aus eurem archiv auscheckt (herrunterlaed) kann ueberpruefen, ob dieser veraendert wurde (siehe der gecrackte debian server - das koennte so einiges schwerer passieren.) 23:24 < Nebukadneza> die jenigen, die gpg haben legen als erstes in ~/.arch-params/ ein verzeichniss namens signing an, und dortdrin dann 2 datein: 23:25 < Nebukadneza> "=default" mit dem inhalt "gpg --clearsign" 23:25 < Nebukadneza> und 23:25 < Nebukadneza> "=default.check" mit dem inhalt "gpg --verify" 23:25 < Nebukadneza> kommen alle soweit mit? 23:26 < Nebukadneza> -.- danke fuer die antworten 23:27 < revenger__> wartwart :) 23:27 < schaf> jupp 23:27 < Nebukadneza> achso ok revenger__ 23:27 < revenger__> ok weiter 23:28 < andoo> <homermode>laaaaaaaaaaangweiliiiiiiiiig</homermode> 23:28 < gnarf> k 23:28 < andoo> also schnell weiter 23:28 < Nebukadneza> gut - jetzt muessen wir tla erstmal sagen wer wir ueberhaupt sind 23:28 < Nebukadneza> da tla die archivnamen mit emails versieht sieht das ganze so aus: 23:29 < Nebukadneza> tla my-id "Dario Ernst <D91@gmx.de>" 23:29 < Nebukadneza> bei mir 23:29 < Nebukadneza> natuerlich eure namen / email addressen *g 23:30 < Nebukadneza> das ganze kann man dann abermals kontrollieren mit: 23:30 < Nebukadneza> tla my-id 23:30 < Nebukadneza> nachdem wir unsere identitaet festgelegt haben werden wir unser erstes archiv erstellen 23:30 < Nebukadneza> der einfachheit halber auf einem lokalen dateisystem 23:31 < Nebukadneza> fuer leute mit gpg: 23:31 < Nebukadneza> tla make-archive -s D91@gmx.de--testarchiv /home/daddel9/testarchiv/ 23:31 < Nebukadneza> ohne gpg: 23:31 < Nebukadneza> tla make-archive D91@gmx.de--testarchiv /home/daddel9/testarchiv/ 23:31 < Nebukadneza> natuerlich eure emailaddressen, archivnamen und pfade 23:31 < Nebukadneza> generisch kann man sagen: 23:31 < gnarf> wichtig: das verzeichnis muss absolut gesetzt werden 23:32 < Nebukadneza> gnarf: stimmt ... hab ich vergessen zu sagen 23:32 < Nebukadneza> und das verzeichniss darf nochnicht existieren 23:32 < Nebukadneza> tla make-archive (-s fuer signierte archive) EMAIL@PROVIER.TLD--ARCHIVNAME /pfad/zum/archiv/ 23:33 < Nebukadneza> so - in unserem archiv wird jetzt ein verzeichniss namens =meta-info liegen 23:34 < Nebukadneza> nachdem das geschehen ist werden wir in unser sourcedir wechseln 23:34 < Nebukadneza> also das dir mit den datein, die wir archivieren wollen 23:35 < Nebukadneza> ich werde hier spasseshalber ein "nuker" fuer das dcom48 rpc exploit auf windows 2000 archivieren. 23:35 < Nebukadneza> nun zu der benennung der projekte 23:35 < Nebukadneza> ein projektname hat den syntax 23:35 < gnarf> Nebukadneza: my-default-archive? 23:35 < Nebukadneza> gnarf: *muss* nicht sein 23:35 < gnarf> gut. 23:35 < Nebukadneza> aber gehoert gesagt - hast recht (ich bin einfach zu mued - hab mir extra notizen gemacht) 23:36 < Nebukadneza> um sich arbeit zu ersparen kann man tla sagen, dass man ein default archive hat 23:36 < Nebukadneza> das tut man mit 23:36 < gnarf> Nebukadneza: macht nichts. ich hab bestimmt genauso viel vergessen ;) 23:36 < Nebukadneza> tla my-default-archive D91@gmx.de--testarchiv 23:36 < Nebukadneza> natuerlich wieder eure mail addys und archivnamen 23:36 < Nebukadneza> zu den projekten 23:36 < Nebukadneza> die sehen normalerweise so aus: 23:36 < Nebukadneza> categorie--branch--version 23:37 < Nebukadneza> also beispielsweise 23:37 < Nebukadneza> dcom48--win2k--0.1 23:37 < Nebukadneza> um zu erklaeren was branches sind nimmt man am besten debian als 3 spiel 23:37 < Nebukadneza> s/3 /bei/ 23:37 < andoo> lol 23:37 < Nebukadneza> wenn debian in tla archiviert werden wuerde haetten wir 3 branches: stable, sid und unstable 23:38 < Nebukadneza> also beispielsweise 23:38 < Nebukadneza> debian--stable--3.0r2 (ist glaubich aktuell) 23:38 < Nebukadneza> oder aehnliche 23:38 < Nebukadneza> debian--unstable--4.0 23:38 < Nebukadneza> man kann sich nun denke ich mal in etwa vorstellen wie man seine projekte nennen sollte 23:38 < Nebukadneza> meinprojekt--devel--0.1 23:38 < Nebukadneza> meinprojekt--stable--0.0 23:39 < Nebukadneza> usw. 23:39 < Nebukadneza> nun um das projekt zu erstellen tun wir folgendes: 23:39 < Nebukadneza> tla init-tree kategorie--branch--version 23:39 < andoo> nah 23:39 < Nebukadneza> also ich wuerde fuer das dcom48 eingeben: 23:39 < andoo> setup-archive ;) 23:39 < gnarf> Nebukadneza: stable, sarge und sid oder stable, testing und unstable, aber macht nichts ;) 23:40 < Nebukadneza> andoo: nein. setup-archive ist depricated 23:40 < andoo> aha 23:40 < Nebukadneza> tla init-tree dcom48--devel--0.1 23:40 < Nebukadneza> tla init-tree dcom48--devel--0.1 23:40 < Nebukadneza> dann sollte wir in unserem aktuellen verzeichniss (also hoffentlich unserem sourcetree) ein verzeichniss namens {arch} haben, in die tla seine informationen speichert. 23:41 < Nebukadneza> jetzt hat man wieder wie wahl zwischen 2 arten der datei"erkennung" 23:41 < Nebukadneza> tla weigert sich strikt datei nur an ihrem namen zu erkennen, da es in grossen sourcearchiven oft vorkommt, dass datein umbenannt werden 23:41 < Nebukadneza> also gibt es die sogenannten tags. strings, mit denen tla sich merkt welche datei welche ist 23:42 < Nebukadneza> es gibt die tagging methods explicit und taggline 23:43 < revenger__> kanns sein das tla schneller is als cvs? 23:43 < Nebukadneza> beim expliziten tagging muessen wir tla einzeln (eben explizit) sagen, welche datein wir haben wollen. 23:43 < Nebukadneza> revenger__: auch bei grossen archiven: ja 23:43 < Nebukadneza> beim taggline schreibt man als kommentar den tag ins sourcefile 23:43 < Nebukadneza> (anmerkung: ich kenne keine sprache, mit der tla aufgrund der kommentarsyntax probleme hat) 23:44 < ThomasWaldmann> Nebukadneza: binaries? 23:44 < Nebukadneza> da taggline von sprache zu sprache stark variiert werde ich hier explicit beschreiben 23:44 < gnarf> Nebukadneza: kann es sein, dass taggline irgendwie nützlicher ist, weil man eine datei jederzeit wiederfinden kann? 23:44 < Nebukadneza> ThomasWaldmann: explicit 23:44 < Nebukadneza> gnarf: jo ... beim expliziten tagging generiert sich tla interne tags fuer die files 23:45 < Nebukadneza> nicht sehr menschenlesbar *g 23:45 < Nebukadneza> wenn du selbst die datein wiederfinden willst nimm taggline 23:45 < andoo> kann ich die tagging methode auch mischen? 23:45 < revenger__> Nebukadneza: interne taglines? 23:45 < Nebukadneza> also setzen wir jetzt die tagging methode auf tagline 23:45 < revenger__> in den sourcen? 23:45 < revenger__> wie schauts dann mit binaries aus wie tw gefragt hat? 23:45 < andoo> und grafiken? 23:45 < gnarf> genau. mischen? 23:45 < Nebukadneza> revenger__: geht nur mit explizit 23:45 < Nebukadneza> mischen: geht nicht 23:45 < revenger__> ok 23:45 < andoo> schade 23:46 < gnarf> :( 23:46 < Nebukadneza> alles was nicht source oder text ist sollte als explizit behandelt werden 23:46 < andoo> dann lass mal lieber explizit nehmen weil das wohl realistischer ist 23:46 < Nebukadneza> eben 23:46 < gnarf> Nebukadneza: worauf beziht sich das "geht nicht"? auf tres? auch archive? auf alles? 23:46 < Nebukadneza> die taggin-method is global 23:46 < Nebukadneza> also bezieht sie sich auf alles 23:47 < andoo> du meinst auf ein archiv? 23:47 < Nebukadneza> (global ist in dem fall ein projekt) 23:47 < andoo> achso 23:47 < Nebukadneza> also setzen wir jetzt die tagging-method: 23:47 < gnarf> Nebukadneza: kann man die tagging methode nicht zwischendurch umsetzen? 23:47 < Nebukadneza> tla id-tagging-method explicit 23:47 < Nebukadneza> gnarf: kann man - allerdings is mir bei ner aelteren version damit schonmal passiert, das mir files verloren gegangen sind 23:48 < Nebukadneza> is aber soweit ich weis in 1.2 gefixt 23:48 < gnarf> ok. ich lass es ;) 23:48 < revenger__> hehe 23:48 < Nebukadneza> nachdem wir die tagging method gesetzt haben koennen wir den sog. initial import machen. dabei wird das projekt sozusagen erst im archiv angelegt. 23:49 < Nebukadneza> das erste patch ist ein diff auf den initial import, das zweite patch ist ein diff aufs erste patch, usw. 23:49 < Nebukadneza> der initial import wird mit base-0 bezeichnet, die patches immer mit patch-1, patch-2, patch-3, usw. 23:49 < Nebukadneza> also imporieren. 23:49 < Nebukadneza> wir brauchen den parameter -S, damit die projekttrees auf dem archiv angelegt werden. also: 23:50 < Nebukadneza> tla import -S 23:50 < revenger__> wie check ich nochmal ob ne file im archiv ist? 23:51 < Nebukadneza> oh ups - das hatte ich total vergessen 23:51 < Nebukadneza> vor dem import muss man ja noch das file adden 23:51 < ThomasWaldmann> Nebukadneza: was macht es ohne -S? 23:51 < Nebukadneza> wir werden also tla sagen, dass wir ein file taggen. 23:51 < Nebukadneza> ThomasWaldmann: fehler *g 23:51 < revenger__> da war ja nochwas gestern ja :) 23:51 < Nebukadneza> tla add dateiname 23:51 < Nebukadneza> (bei mir tla add dcom48.c) 23:51 < Nebukadneza> damit wird das file von tla getaggt 23:51 < Nebukadneza> wir koennen nachsehen welche files nochnicht getaggt sind: 23:51 < Nebukadneza> tla tree-lint 23:52 < revenger__> da gabs aber nochwas mit S? 23:52 < revenger__> oder? 23:52 < Nebukadneza> jo - spaeter 23:52 < revenger__> nein damit haben wir gestern auch gecheckt ob es im archiv war 23:52 < Nebukadneza> nein - das war n -s, und bezieht sich aufs einchecken 23:53 < Nebukadneza> und das kommt jetzt *g 23:53 < revenger__> ich mein S? und P das hat der neben den files hingeschrieben 23:53 < revenger__> S? falls sie nicht getaggt waren 23:53 < Nebukadneza> is auch depricated 23:53 < revenger__> oder P? 23:53 < Nebukadneza> tree-lint is das aktuelle 23:53 < revenger__> ok 23:54 < Nebukadneza> wenn wir jetzt etwas in unserem source aendern sollten wir die aendernung natuerlich auch einchecken. ich empfehle jedem so oft wie nur moeglich einzuchecken - auch wenn der source noch sehr unfertig ist, oder - sogar - nicht funktionier. 23:54 < Nebukadneza> zurueck kann man IMMER falls man scheisse baut 23:54 < ThomasWaldmann> Nebukadneza: aber nur bei priv. archiven 23:54 < Nebukadneza> wir sollten unserem checkin natuerlich auch einen kleinen string mitgeben, was wir denn geaendert haben 23:54 < Nebukadneza> ThomasWaldmann: eine --devel, und eine --stable 23:55 < Nebukadneza> die devel is dann halt wirklich devel 23:55 < Nebukadneza> also im endeffekt sieht das einchecken dann so aus: 23:55 < Nebukadneza> tla commit -s 'changed dcom48.c to crash every evil box' 23:55 < Nebukadneza> oder aehnliches 23:56 < ThomasWaldmann> nicht -L ? 23:56 < Nebukadneza> puh - hat mich die scheiss tla hilfe da wieder hinters licht gefuehrt? 23:56 < Nebukadneza> tomlord mit seinen ungenauen beschreibungen 23:56 < Nebukadneza> natuerlich -L ... 23:57 < andoo> grml 23:57 < Nebukadneza> tla commit -L 'changed dcom48.c to crash every evil box' 23:57 < Nebukadneza> sorry 23:57 < Nebukadneza> wenn man versehentlich -s eingecheckt hat machts nix 23:57 < Nebukadneza> er bringt ja nur nen fehler 23:58 < revenger__> uhm? 23:58 < revenger__> These files would be source but lack inventory ids (`tla add' or a tagline perhaps?): 23:58 < revenger__> main 23:58 < revenger__> A/ .arch-ids 23:58 < revenger__> A .arch-ids/main.c.id 23:58 < revenger__> A main.c 23:58 < revenger__> * update pristine tree (mare@ypsilon.net--testarchiv/aufgabe2--devel--0.1--base-0 => aufgabe2--devel--0.1--patch-1) 23:58 < revenger__> * committed mare@ypsilon.net--testarchiv/aufgabe2--devel--0.1--patch-1 23:58 < ThomasWaldmann> Nebukadneza: bei 1.2 braucht man nur noch nen init-tree, kein setup-archive mehr? 23:58 < revenger__> das brachte er mit -s 23:58 < Nebukadneza> ThomasWaldmann: richtig - dank import -S 23:58 < andoo> commit: tree has no patch log entries for version 23:58 < Nebukadneza> revenger__: die inventory tags haben wenig zu sagen ... 23:59 < revenger__> ok 23:59 < Nebukadneza> allerdings schlicht rm -rf .arch-ids wuerds bringen 23:59 < Nebukadneza> er hats eingechect 23:59 < Nebukadneza> andoo: zeig mal den output von deinem tla import -S 23:59 < andoo> Error during call to `vu_chdir' for tlaarchives/testarchiv (No such file or directory) 23:59 < andoo> PANIC: I/O error Day changed to 31 May 2004 00:00 < andoo> das ist wohl das wichtigste 00:00 < Nebukadneza> ahm jo ... 00:00 < andoo> cach fuck 00:00 < andoo> ach 00:00 < andoo> ich weiß 00:00 < Nebukadneza> a) gibt es tlaarchives/testarchiv? 00:00 < Nebukadneza> b) hats die richtigen chmods? 00:00 < Nebukadneza> c) isses n tla archiv? 00:00 < andoo> nein, war kein absolutes dir ;) 00:00 < Nebukadneza> axo 00:00 < Nebukadneza> *g 00:01 < andoo> einen moment bitte 00:01 < Nebukadneza> musst halt nommal n make-archive machen ... den rest bis zum import kannste dann ueberspringen 00:01 < Nebukadneza> ich mach fies einfach mal weiter, da es eh nichmehr viel is 00:01 < Nebukadneza> falls jetzt jemand aus eurem archiv auschecken will, oder ihr aus dem archiv von jemandem sieht das ganze nicht viel schwerer aus ... 00:02 < Nebukadneza> ihr muesst nur das archiv des betreffenden registrieren: 00:02 < Nebukadneza> tla register-archive D91@gmx.de--Nebukadneza http://hustler-server.dyndns.org:8080/~tla/arch/ 00:02 < Nebukadneza> beispielsweise 00:03 < Nebukadneza> danach koennten wir die sehr sehr weit zurueckliegende python implementation von mala (die eigentlich nur codedurcheinander ist) auschecken 00:03 < Nebukadneza> tla get D91@gmx.de--Nebukadneza/mala-python--devel 00:03 < Nebukadneza> waere ein beispiel hierfuer 00:03 < Nebukadneza> generisch sieht das so aus: 00:04 < Nebukadneza> tla register-archive EMAIL@PROVIDER.TLD--ARCHIVNAME (http://host , ftp://user:pw@host, sftp://user@host , lokales fs)/pfad/zum/archiv 00:05 < Nebukadneza> tla get EMAIL@PROVIDER.TLD--ARCHIVNAME/KATEGORIE--BRANCH(--version) 00:05 < Nebukadneza> falls --version nicht mitgegeben wird wird einfach die neuste geladen 00:05 < Nebukadneza> soweit halbwegs verstaendlich? 00:05 < gnarf> ja 00:06 < Nebukadneza> gut 00:06 < Nebukadneza> mehr braucht man eigentlich fuer den alltagsgebrauch von tla nicht ... 00:06 < gnarf> dabei sollte man sich in einem leeren verzeichnis befinden, korrekt? 00:06 < gnarf> also beidem tla get mein ich 00:06 < simson> nein. 00:06 < Nebukadneza> gnarf: es wird ein neues verzeichniss angelegt 00:06 < Nebukadneza> mit dem namen des projekts 00:06 < gnarf> Nebukadneza: in . ? 00:06 < Nebukadneza> is also im endeffekt wurdscht 00:07 < Nebukadneza> jo 00:07 < gnarf> gut. 00:07 < Nebukadneza> bei meinem beispiel haettest du dann ein 00:07 < Nebukadneza> mala-python--devel--0.1 00:07 < Nebukadneza> verzeichniss in . 00:07 < Nebukadneza> abschliesend bliebt noch das interne hilfesystem von tla zu empfehlen. 00:07 < Nebukadneza> tla help 00:07 < Nebukadneza> tla help 00:07 < ThomasWaldmann> tla what-changed --diffs 00:08 < Nebukadneza> gibt alle commands aus 00:08 < Nebukadneza> ThomasWaldmann: hab ich nie gebraucht *g 00:08 < ThomasWaldmann> benutz ich sehr oft 00:08 < Nebukadneza> (tla help sollte man ggf durch less pipen *g) 00:08 < Nebukadneza> tla <command> --help 00:08 < Nebukadneza> gibt eine hilfe zum betreffenden command aus 00:08 < Nebukadneza> also bsp tla import --help 00:08 < andoo> tla <command> -H 00:09 < ThomasWaldmann> und star-merge (das killer-kommando von tla ;) 00:09 < Nebukadneza> ThomasWaldmann: lol ... 00:09 < Nebukadneza> ThomasWaldmann: damit hab ich auch so meine erfahrungen ... 8g 00:09 < Nebukadneza> http://wiki.gnuarch.org/ - die original arch seite 00:09 < Nebukadneza> http://cytrinox.dyndns.org/users/cytrinox/howtos/tla-howto/tla-howto.html - sehr gutes tutorial von einem freund 00:09 < revenger__> ThomasWaldmann: was macht star-merge? 00:09 < ThomasWaldmann> ich auch, vor allem gute ;) 00:10 < Nebukadneza> ThomasWaldmann: dem muss ich wiedersprechen *g 00:10 < Nebukadneza> bei 1.0 2 archivcrashes dank start-merge 00:10 < ThomasWaldmann> das merged branches oder auch ein einzelnes patchset 00:10 < gnarf> aha 00:10 < ThomasWaldmann> und verhält sich dabei deutlich intelligenter als cvs 00:10 < Nebukadneza> das is wohl wahr 00:10 < Nebukadneza> is das eigentlich in 1.2 risikofrei benutzbar? 00:10 < Nebukadneza> habs ewig nitmehr getestet 00:11 < revenger__> das mit der sftp unterstützung is nett 00:11 < ThomasWaldmann> bis jetzt kein aerger, benutz das schon lange 00:11 < Nebukadneza> hm ok 00:11 < Nebukadneza> sollt ich dann malwieder machen 00:11 < Nebukadneza> revenger__: is nur geil find ich *g 00:11 < revenger__> cvs unterstützts eh auch.. 00:11 < andoo> kann ich mir meine lokalen änderungen zum archiv anzeigen lassen? 00:11 < ThomasWaldmann> btw, das moinmoin projekt benutzt arch und das arch Projekt moinmoin ;) 00:11 < revenger__> naja werd meine nächsten projekte mal in tla reinquetschen :) 00:12 < revenger__> so richtig verwenden könnt ichs jetz noch nicht ohne nachzuschaun.. 00:12 < Nebukadneza> andoo: geht - sekunde 00:12 < Nebukadneza> revenger__: ausser commit -L brauchste nix sobald das projekt steht *g 00:12 < ThomasWaldmann> andoo: tla what-changed --diffs 00:12 < revenger__> Nebukadneza: gibts webfrontends? 00:12 < ThomasWaldmann> das sind die lok. aenderungen seit deinem letzten commit / update 00:13 < Nebukadneza> revenger__: viewarch.cgi 00:13 < Nebukadneza> ThomasWaldmann: tla changes wuerd auch gehen, oder? 00:13 < ThomasWaldmann> das ist mir oft zu wenig info 00:13 < Nebukadneza> ok 00:13 < Nebukadneza> mir langts *g 00:13 < revenger__> kann man sich bei änderungen auch emails zuschicken lassen? 00:14 < Nebukadneza> uff 00:14 < Nebukadneza> jetzt fragste was 00:14 < Nebukadneza> baus dir ein *g 00:14 < Nebukadneza> oder frag tomlord 00:14 < Nebukadneza> soweit ich weis nicht 00:14 < andoo> was macht tla wenn ich eine datei geändert habe, die commiten will und die vor mir schon jemand geändert hat? 00:14 < Nebukadneza> andoo: motzen, dass du nicht das aktuelle patch in deinem lokalen sourcedir hat 00:15 < Nebukadneza> musst erst das aktuelle patch auschecken 00:15 < andoo> Nebukadneza: merged das auch automatisch wenn sich die patches nicht überschneiden? 00:15 < Nebukadneza> wie meinst das? 00:15 < andoo> naja, der erste ändert eine zeile (100) und ich änder zeile 200 00:16 < andoo> gibt das trotzdem ärger? 00:16 < Nebukadneza> axo 00:16 < Nebukadneza> es sind diffs - theoretisch also nein 00:16 < Nebukadneza> aber getestet hab ichs nochnich 00:16 < andoo> ThomasWaldmann? du weißt das doch bestimmt 00:16 < Nebukadneza> *g 00:16 < ThomasWaldmann> andoo: das ist kein problem 00:16 < revenger__> hehe 00:16 < Nebukadneza> diffs eben 00:16 < andoo> ThomasWaldmann: und was passiert wenn sich die änderungen überschneiden? 00:16 < Nebukadneza> aber getestet hab ichs nochnich 00:16 < andoo> ThomasWaldmann? du weißt das doch bestimmt 00:16 < Nebukadneza> *g 00:16 < ThomasWaldmann> andoo: das ist kein problem 00:16 < revenger__> hehe 00:16 < Nebukadneza> diffs eben 00:16 < andoo> ThomasWaldmann: und was passiert wenn sich die änderungen überschneiden? 00:17 < Nebukadneza> andoo: motzter 00:17 < ThomasWaldmann> dann kriegst nen *.rej 00:17 < Nebukadneza> dass du nicht das aktuelle patch hat 00:17 < andoo> ok 00:17 < Nebukadneza> hats zumindest bei 1.0 oder 1.1 noch gemacht glaub ikke 00:17 < andoo> ok 00:17 < andoo> noch etwas 00:18 < andoo> ich habe jetzt einmal importiert und dabei nur die datei SConstruct hinzugefügt 00:18 < andoo> danach ein commit 00:18 < andoo> mit 5 dirs und etlichen src-files 00:18 < Nebukadneza> sconstruct ist dann erst in patch1 00:18 < Nebukadneza> axo sorum 00:18 < Nebukadneza> ja 00:18 < ThomasWaldmann> precious ^(\+.*|\.gdbinit|\.#ckpts-lock|=build\.*|=install\.*|.*\.(pyo|pyc)|RCS|RCSLOG|SCCS|TAGS)$ 00:18 < ThomasWaldmann> # ============== hinzufügen 00:19 < ThomasWaldmann> fuer python ;) 00:19 < Nebukadneza> hehe 00:19 < ThomasWaldmann> siehe LinuxWiki:arch 00:19 < Nebukadneza> pycs loesch ich immer manuell 00:19 < andoo> kann ich jetzt die erste version wo nur das SConstruct drin war auch noch auschecken? 00:19 < Nebukadneza> andoo: ja 00:19 < Nebukadneza> sekunde 00:19 < andoo> Nebukadneza: stell dir vor ich bin in ~/bla/aegis 00:19 < andoo> und da will ich diese erste version rein haben 00:20 < andoo> wohl erst mal wieder init-tree oder? 00:20 < Nebukadneza> du hast das zeug doch schon im archiv, oder? 00:20 < andoo> ja <andoo> jetzt will ich die erste version auschecken <Nebukadneza> also nur auschecken <Nebukadneza> init-tree ist zum anlegen <Nebukadneza> tla get email@provider.tld/kategorie--branch--version--base-0 (oder base0) <andoo> ja <Nebukadneza> base-0 isses <Nebukadneza> genauso kannste das auch mit allen patches machen