[linux-l] Nutzt jemand Git?

Volker Grabsch vog at notjusthosting.com
Fr Mai 8 08:58:55 CEST 2009


Steffen Dettmer <steffen at dett.de> schrieb:
> * Volker Grabsch wrote on Tue, May 05, 2009 at 00:47 +0200:
> > 
> > _Gerade_ bei kleinen Projekten sollte man auf CVS oder SVN
> > verzichten!
> > 
> > Grund #1: Wenn man sich eh in DVCS einarbeiten möchte, ist so
> > ein kleines Projekt die ideale Gelegenheit.
> 
> Das muss so nicht richtig sein. Bei uns wäre die Hürde recht
> hoch, weil man viel Vorarbeit machen müsste. Das geht ja schon
> mit den Entwicklerrichtlinien (coding rules) los, über Backup hin
> zu Reproduzierbarkeit jedes Releases aus Sourcen von Backups.

Kurze Klarstellung: Ich sprach von _kleinen_ Projekten im
Sinne von "könnte eine Person privat erledigen", nicht von
"klein" im Sinne von "weniger als 100.000 Dateien". :-)

Also entweder private Projekte, oder Firmen-Projekte, die
klein genug sind, dass man auf das übliche Tamtam verzichten
kann. Zum Beispiel ein Proof-of-Concept, ein Technology-
Preview oder ein Prototyp könnten geeignete Projekte sein.

> > Sowohl SVN als auch die DVCS haben ebenfalls solch eine Möglich-
> > keit, da musst du einfach in der Doku nachschlagen. Allerdings
> > machen sie es alle auf unterschiedliche Art und Weise. In SVN
> > ist es ein Property, in Mercurial ein Postprocessing-Script, etc.
> 
> Aber das geht doch logisch überhaupt nicht. Man muss doch genau
> das eine unter den unendlich vielen Source-Repos erkennen, weil
> doch alle anders sind; Branchnamen und Tags sind auch nur lokal.

Jedes Changeset hat eine Identifikation. Unter Darcs ist sie
benutzerdefiniert, unter Mercurial und GIT ist das ein verkürzter
Hashwert.

Diese IDs sind über die Repositories hinweg eindeutig. Das
muss auch so sein, schließlich möchte man beim Push bzw. Pull
ja wissen, welche Changesets der andere schon hat und welche
nicht.

Um diese und ähnliche Fragen zu klären kann ich nur nochmals
empfehlen: Starte einfach mal ein kleines Projekt mit einem
DVCS, lege dir irgendwo eine Kopie an, mache ein paar Commits,
spiele mit Push und Pull herum, etc.

Für all das brauchst du noch keinen Server oder ähnliches,
das kann man alles wunderbar lokal durchspielen.


Gruß,

    Volker

-- 
Volker Grabsch
---<<(())>>---
Administrator
NotJustHosting GbR



Mehr Informationen über die Mailingliste linux-l