Vorlage:Auschecken: Unterschied zwischen den Versionen

Aus TuxBoxWIKI
Zur Navigation springen Zur Suche springen
(Auschecken erweitert)
Zeile 1: Zeile 1:
Der [[Tuxbox|Tuxbox]] Quellcode wird derzeit hauptsächlich durch den [[Tuxbox|Tuxbox]] [[CVS-Server]] bereitgestellt. Dort befindet sich der Hauptentwicklungszweig des Projektes im so genannten HEAD.  
Der [[Tuxbox|Tuxbox]] Quellcode wird derzeit hauptsächlich durch den [[Tuxbox|Tuxbox]] [[CVS-Server]] bereitgestellt. Dort befindet sich der Hauptentwicklungszweig des Projektes im so genannten [[HEAD.]]
Regelmäßige Quellreleases sind niemals gemacht worden, und sind auch nicht für die Zukunft geplant.  
Regelmäßige Quellreleases sind niemals gemacht worden, und sind auch nicht für die Zukunft geplant.  
Inzwischen werden auch einige Repositories von einigen Entwicklern auf der Basis von [[Git]] parallel dazu gepflegt. Grund: Die Möglichkeiten von CVS sind leider in gewissen Bereichen eingeschränkt und es ist daher für Entwickler nicht immer optimal, mit [[CVS]] zu arbeiten. [[Git]] bietet hier gewisse Vorteile auch gegenüber [[SVN]]. Es ist aber für den Normal-Auschecker ohne größere Bedeutung.


Als Normalbenutzer werden die Quellen anonym "ausgecheckt", was bedeutet, dass diese auf die eigene Festplatte kopiert werden, indem man zuerst auf einer (lokalen) Festplatte mit "ordentlich" freiem Platz ein leeres Verzeichnis erstellt, z.B. ''/[[Tuxbox|tuxbox]]-[[CVS|cvs]]'' und in diesen Ordner wechselt, und diesen Befehl ausführt.
Inzwischen werden auch einige Repositories von einigen Entwicklern auf der Basis von [[Git]] parallel dazu gepflegt. Grund: Die Möglichkeiten von [[CVS]] sind leider in gewissen Bereichen erheblich eingeschränkt und es ist daher für Entwickler nicht immer optimal, mit [[CVS]] zu arbeiten. [[Git]] bietet hier deutliche Vorteile auch gegenüber [[SVN]]. Es ist aber für den Normal-Auschecker ohne größere Bedeutung.
 
Als Normalbenutzer werden die Quellen anonym "ausgecheckt", was bedeutet, dass diese auf die eigene Festplatte kopiert werden, indem man zuerst auf einer (lokalen) Festplatte mit "ordentlich" freiem Platz ein leeres Verzeichnis erstellt, z.B. ''/[[Tuxbox|tuxbox]]-[[CVS|cvs]]'' und in diesen Ordner wechselt, und diese Befehle oder auch Scripte dort ausführt.


===CVS===
===CVS===
cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -P .


  cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -P .
Auschecken nach Datum. Bsp.: 26.10.2009 19:00 Uhr
  cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -D "2009-10-26 19:00+0100" -P .


====Update der CVS-Quellen====
Für ein Update der Quellen, diesen Befehl verwenden:
Für ein Update der Quellen, diesen Befehl verwenden:
  cvs -z3 -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox up -dP .
  cvs -z3 -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox up -dP .


Auschecken nach Datum. Bsp.: 26.10.2009 19:00 Uhr
<br style="clear:right;" />
<div style="padding:0.5em; margin-bottom:1em; border: 2px solid #a00;">[[Bild:Stop hand.png]] '''HINWEIS:'''
''Es ist durchaus sinnvoll wegen des Traffics möglichst nur ein Update zu machen, als jedesmal komplett auszuchecken!''
</div>


cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -D "2009-10-26 19:00+0100" -P .
===Git===
Alternativ kann man auch von [[Git]]-Repositories auschecken, welche quasi sog. Mirrors vom [[Tuxbox-CVS]] darstellen. Bei [[Git]] spricht man hier allerdings vom "'''Klonen'''", bei dem ein Repository-Clone auf dem Lokalen Rechner angelegt wird und unabhängig vom [[CVS]] arbeiten kann.


'''Hinweis:'''
====Gitorious====
''Es ist durchaus sinnvoll wegen des Traffics möglichst nur ein Update zu machen, als jedesmal komplett auszuchecken!''
Hier handelt es sich um ein reines Mirror-Repository von Seife. Es wird regelmäßig aktualisiert, wobei die Sychronisierung mit dem [[Tuxbox-CVS]] nicht immer umgehend erfolgt. Der Master-[[Branch]] entspricht dem [[HEAD]] aus dem [[Tuxbox-CVS]].
#!/bin/sh
# use this script for cloning all git repos to your machine
# How to:
# create a empty clone directory
# mkdir /home/[USER]/[CLONE_DIRECTORY]
# enter to your clone directory
# cd /home/[USER]/[CLONE_DIRECTORY]
# execute this script
# ./clone.sh
# this will clone all repos to your clone directory
# this will clone all repos to your clone directory
CVSREPOS="apps boot cdk driver hostapps"
REPLIST="$CVSREPOS"
GITCLONE="git clone git://gitorious.org/~seife/tuxbox-cvs/"
     
#clone all
for f in  $REPLIST ; do
$GITCLONE/$f.git $f
done


===Git===
====Sourceforge====
Hier handelt es sich um ein Repository bestehend aus mehreren [[Branch]]es, von dem einer davon dem [[HEAD]] aus dem [[Tuxbox-CVS]] entspricht, auf den im folgenden Clone-Script automatisch gewechselt wird und mit dem man arbeiten kann. Dieser wird derzeit auch regelmäßig sychronisiert.
#!/bin/sh
# use this script for cloning all git repos to your machine
# How to:
# create a empty clone directory
# mkdir /home/[USER]/[CLONE_DIRECTORY]
# enter to your clone directory
# cd /home/[USER]/[CLONE_DIRECTORY]
# execute this script
# ./clone.sh
# this will clone all repos to your clone directory
PROJECT=novatux
CVSREPOS="apps boot cdk driver hostapps"
REPLIST="$CVSREPOS"
GITCLONE="git clone git://$PROJECT.git.sourceforge.net/gitroot/$PROJECT"
#clone all
for f in  $REPLIST ; do
$GITCLONE/$f
done
#create remotes to original repos from tuxbox-cvs
TUXBOX="tuxbox-cvs"
for f in  $CVSREPOS ; do
cd $f
git branch -v $TUXBOX
git branch -v "novatux_experimental"
git checkout $TUXBOX
cd ..
done


Alternativ kann man auch ein [[Git]]-Repository auschecken. Bei [[Git]] spricht man hier allerdings von "clone". Also es wird ein Repository-Clone auf dem Lokalen Rechner angelegt.


  git://gitorious.org/tuxbox-cvs/mainline.git
====Update der GIT-Repositories====
  #!/bin/sh
# this will update all repos in your clone directory
# change to the directory that contains all repositories and execute this script
CVSREPOS="apps boot cdk driver hostapps"
DIR=`pwd`
REPLIST="$CVSREPOS"
GITPULL="git pull -v"
#pull all
for f in  $REPLIST ; do
cd $DIR/$f
$GITPULL
cd ..
done


'''Hinweis:'''
<br style="clear:right;" />
''Obwohl es eigentlich keiner Erklärung bedarf soll aber hier trotzdem darauf hingewiesen werden, dass es nach einem Update in der Regel notwendig ist ein neues configure durchzuführen!''
<div style="padding:0.5em; margin-bottom:1em; border: 2px solid #a00;">[[Bild:Stop hand.png]] '''HINWEIS:'''
''Obwohl es eigentlich keiner Erklärung bedarf, soll aber hier trotzdem darauf hingewiesen werden, dass es nach einem Update in der Regel notwendig ist, ein neues configure durchzuführen!''
</div>

Version vom 18. Juni 2011, 19:59 Uhr

Der Tuxbox Quellcode wird derzeit hauptsächlich durch den Tuxbox CVS-Server bereitgestellt. Dort befindet sich der Hauptentwicklungszweig des Projektes im so genannten HEAD. Regelmäßige Quellreleases sind niemals gemacht worden, und sind auch nicht für die Zukunft geplant.

Inzwischen werden auch einige Repositories von einigen Entwicklern auf der Basis von Git parallel dazu gepflegt. Grund: Die Möglichkeiten von CVS sind leider in gewissen Bereichen erheblich eingeschränkt und es ist daher für Entwickler nicht immer optimal, mit CVS zu arbeiten. Git bietet hier deutliche Vorteile auch gegenüber SVN. Es ist aber für den Normal-Auschecker ohne größere Bedeutung.

Als Normalbenutzer werden die Quellen anonym "ausgecheckt", was bedeutet, dass diese auf die eigene Festplatte kopiert werden, indem man zuerst auf einer (lokalen) Festplatte mit "ordentlich" freiem Platz ein leeres Verzeichnis erstellt, z.B. /tuxbox-cvs und in diesen Ordner wechselt, und diese Befehle oder auch Scripte dort ausführt.

CVS

cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -P .

Auschecken nach Datum. Bsp.: 26.10.2009 19:00 Uhr

cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -D "2009-10-26 19:00+0100" -P .

Update der CVS-Quellen

Für ein Update der Quellen, diesen Befehl verwenden:

cvs -z3 -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox up -dP .


Stop hand.png HINWEIS:

Es ist durchaus sinnvoll wegen des Traffics möglichst nur ein Update zu machen, als jedesmal komplett auszuchecken!

Git

Alternativ kann man auch von Git-Repositories auschecken, welche quasi sog. Mirrors vom Tuxbox-CVS darstellen. Bei Git spricht man hier allerdings vom "Klonen", bei dem ein Repository-Clone auf dem Lokalen Rechner angelegt wird und unabhängig vom CVS arbeiten kann.

Gitorious

Hier handelt es sich um ein reines Mirror-Repository von Seife. Es wird regelmäßig aktualisiert, wobei die Sychronisierung mit dem Tuxbox-CVS nicht immer umgehend erfolgt. Der Master-Branch entspricht dem HEAD aus dem Tuxbox-CVS.

#!/bin/sh

# use this script for cloning all git repos to your machine
# How to:
# create a empty clone directory
#	mkdir /home/[USER]/[CLONE_DIRECTORY]
# enter to your clone directory
#	cd /home/[USER]/[CLONE_DIRECTORY]
# execute this script
#	./clone.sh

# this will clone all repos to your clone directory

# this will clone all repos to your clone directory
CVSREPOS="apps boot cdk driver hostapps"
REPLIST="$CVSREPOS"
GITCLONE="git clone git://gitorious.org/~seife/tuxbox-cvs/"
     
#clone all
for f in  $REPLIST ; do
	$GITCLONE/$f.git $f
done

Sourceforge

Hier handelt es sich um ein Repository bestehend aus mehreren Branches, von dem einer davon dem HEAD aus dem Tuxbox-CVS entspricht, auf den im folgenden Clone-Script automatisch gewechselt wird und mit dem man arbeiten kann. Dieser wird derzeit auch regelmäßig sychronisiert.

#!/bin/sh

# use this script for cloning all git repos to your machine
# How to:
# create a empty clone directory
#	mkdir /home/[USER]/[CLONE_DIRECTORY]
# enter to your clone directory
#	cd /home/[USER]/[CLONE_DIRECTORY]
# execute this script
#	./clone.sh

# this will clone all repos to your clone directory

PROJECT=novatux
CVSREPOS="apps boot cdk driver hostapps"
REPLIST="$CVSREPOS"
GITCLONE="git clone git://$PROJECT.git.sourceforge.net/gitroot/$PROJECT"


#clone all
for f in  $REPLIST ; do
	$GITCLONE/$f
done

#create remotes to original repos from tuxbox-cvs
TUXBOX="tuxbox-cvs"
for f in  $CVSREPOS ; do
	cd $f
	git branch -v $TUXBOX
	git branch -v "novatux_experimental"
	git checkout $TUXBOX
	cd ..
done


Update der GIT-Repositories

#!/bin/sh

# this will update all repos in your clone directory
# change to the directory that contains all repositories and execute this script
CVSREPOS="apps boot cdk driver hostapps"
DIR=`pwd`
REPLIST="$CVSREPOS"
GITPULL="git pull -v"

#pull all
for f in  $REPLIST ; do
	cd $DIR/$f
	$GITPULL
	cd ..
done


Stop hand.png HINWEIS:

Obwohl es eigentlich keiner Erklärung bedarf, soll aber hier trotzdem darauf hingewiesen werden, dass es nach einem Update in der Regel notwendig ist, ein neues configure durchzuführen!