Seite 1 von 1

Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Fr, 06. Feb 2015 0:25
von DelUser01
Hallo

zur Unterstützung meines Xbase++-Entwickler-Teams suche ich ein "Werkzeug zur Softwareentwicklung im Team". Subversion und andere wurden genannt.
Das sind aber Programme zur "Versionsverwaltung". Es geht aber nicht um Programmversionen (meine Kunden haben (noch) alle den selben Versionsstand).

Vielleicht hat der Eine oder Andere Erfahrungen bei der Arbeit im dezentralen Team und hat keine Probleme damit uns seine Erfahrungen mitzuteilen.

Bin gespannt auf Eure Antworten...

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Fr, 06. Feb 2015 6:22
von Jan
Roland,

es geht bei "Versionsverwaltungen" nicht nur darum, verschiedene Versionen zu verwalten. Sondern auch den Code von verschiedenen Entwicklern.

Jan

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Fr, 06. Feb 2015 11:58
von brandelh
Es geht aber nicht um Programmversionen (meine Kunden haben (noch) alle den selben Versionsstand).
du meinst du hast einmal deine Software geschrieben, an alle geliefert und danach nichts mehr geändert ?

Eine Versionverwaltung regelt die Verwaltung von verschiedenen Versionsständen deiner Software, oder nennen wir es Tagessicherungen ...
Zusätzlich können mehrere Entwickler aus dem gesamt Projekt jeweils einzelne Teile (ich denke PRGs) auschecken und zur Änderungen vor anderen schützen,
sonst kämen sich zwei Entwickler schnell in die Quere.

Wenn man aber das ganze Programm in einer PRG hat, dann vermute ich wird das nicht helfen.

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Fr, 06. Feb 2015 12:29
von satmax
Ich arbeite seit ca. 2 Jahren mit https://github.com, kombiniert mit Sourcetree (https://de.atlassian.com/software/sourcetree/overview). So haben ich zugleich eine zusätzliche Datensicherung. Bei Interesse kann ich gerne mehr Infos geben.

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Fr, 06. Feb 2015 12:39
von DelUser01
Hallo Hubert
brandelh hat geschrieben:du meinst du hast einmal deine Software geschrieben, an alle geliefert und danach nichts mehr geändert ?
Nein... die Updates werden im Internet oder bei entsprechenden Kunden direkt auf deren Server bereitgestellt. Die Aktualisierung wird dann in einem Zeitfenster oder sofort automatisch durchgeführt.

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Fr, 06. Feb 2015 18:15
von Rolf Ramacher
Hallo Roland.,

ich habe nicht verstanden worum es geht. :booty:

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Fr, 06. Feb 2015 21:35
von DelUser01
Hallo Rolf,

was für eine Frage - weiß nicht wie ich die beantworten soll...
Für die Unterstützung mehrerer Software-Entwickler an einem Projekt (Entwickler-Teamwork) gibt es Programme welche die Zusammenarbeit unterstützen, sogenannte Kollaborations-Software (o.ä.). Das muss es ja schon lange Jahre geben.

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Fr, 06. Feb 2015 22:24
von Jan
Genau. Nennt sich Versionsverwaltung.

Jan

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Fr, 06. Feb 2015 22:33
von DelUser01
Hallo Jan

nichts gegen den Namen "Versionsverwaltung" - aber das suche ich nicht.
Wir . Du und alle anderen - hätten nicht überlebt wenn nicht jeder selbst seine "Versionsverwaltung" aufgebaut hätte.

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Fr, 06. Feb 2015 22:40
von Jan
Roland,

ich denke doch, das Du eine Versionsverwaltung suchst. Denn damit verwaltet man nicht nur verschiedene Programmversionen (was Du zwar sagst das Du das nicht brauchst, aber da meinst Du was ganz anderes mit als die Versionsverwaltungen meinen), sondern auch den Code von verschiedenen Entwicklern an einem gemeinsamen Projekt.

Wenn Du Dich doch aufraffen könntest zum Forentreffen zu kommen (Hubert z.B.kommt auch) - Andreas wird über genau das Thema sprechen. Und steht wie immer auch für Gespräche abseits der Session gerne zur Verfügung, wenn es Fragen dazu gibt.

Jan

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Sa, 07. Feb 2015 9:47
von satmax
Roland Gentner hat geschrieben:Hallo Jan

nichts gegen den Namen "Versionsverwaltung" - aber das suche ich nicht.
Hallo Roland, offensichtlich verstehen hier die meisten nicht was Du willst. Ein "Werkzeug zur Softwareentwicklung im Team" ist klassischer Weise eine "Versionsverwaltung". Das bedeutet ja nicht unbedingt das man mehrere Versionen parallel verwalten muss. :)

Eventuell versuchst Du uns mal zu erklären was Du mit einem "Werkzeug zur Softwareentwicklung im Team" genau meinst beziehungsweise was Du davon erwartest.

Ich arbeite mit einem Entwickler, wir sind also zwei Programmierer. Unser Projekte sind in verschiedenen Programmiersprachen entwickelt und wir arbeiten nicht direkt gleichzeitig am gleichen Projekt. Dennoch verwenden wir eine Versionsverwaltung. Die würde ich auch verwenden wenn ich völlig alleine arbeiten würde.

So ist jederzeit nachvollziehbar wer was und wann geändert hat. Jede "Dateiversion" die eingecheckt wird bleibt erhalten (*.prg, *.ch*, *.res, *.lst, *.txt, *.docx, usw.). Darum geht es doch bei einem "Werkzeug zur Softwareentwicklung im Team", oder?

Zugleich sind alle Sourcen an einem zentralen Punkt gespeichert. Das kann in Deinem Netzt lokal sein, oder wir ein meinem Fall die Cloud. So habe ich gleichzeitig eine externe zusätzliche Datensicherung.

Gruß
Markus

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: So, 08. Feb 2015 13:29
von brandelh
Roland Gentner hat geschrieben:Hallo Jan
nichts gegen den Namen "Versionsverwaltung" - aber das suche ich nicht.
Wir . Du und alle anderen - hätten nicht überlebt wenn nicht jeder selbst seine "Versionsverwaltung" aufgebaut hätte.
Ich denke du misst dem Begriff zuviel Bedeutung zu !
Ich selbst habe Versionen in ZIP Dateien und das reicht für mich alleine noch ganz gut, eine richtige war für mich allein zu umständlich (oder eben zu neu ;-) ).
Aber auch mir ist es schon passiert, dass ich x.0 gezippt habe, eine Änderung im Code x.1 erzeugt und zur Freigabe gestellt habe ...
und dann bemerkt man einen Fehler der sofort behoben werden muss, x.1 ist aber nicht freigegeben und auch nicht genug getestet ...

Also x.0 ändern und x.0a sichern und freigeben.
In x.1 die Änderung auch nachpflegen und X.1a nachsenden.

Für einen Entwickler geht das noch, bei zweien wird es schwierig, über mehr möchte ich nicht nachdenken ...

und genau hier wird eine richtige Versionsverwaltung mit Codeaufteilung in kleinere Einheiten nötig, da nun an einem code gearbeitet wird und sowohl
mehrere Entwickler gegenseitig als auch mehrere Programmstände geregelt verwaltet werden.

Jedes Tool, das mehrere Entwickler unterstützen will, benötigt zunächst die Kontrolle über den Code ob mit oder ohne Tagesständen ist egal.
Spätestens nach dem ersten Tag sind mehrere Tagesstände da.

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: So, 08. Feb 2015 19:28
von DelUser01
Was mich natürlich interessieren würde wären Erfahrungen die der Eine oder Andere schon mit einer solchen Software im Team gemacht hat. Positive wie Negative.
Dass man das als Einzelkämpfer auch verwenden und dadurch zusätzliche Vorteile haben kann ich mir schon vorstellen.

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Mo, 09. Feb 2015 22:39
von Werner_Bayern
Servus Roland,

wichtig zu wissen wäre noch, wie groß Dein Team ist.

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Mo, 09. Feb 2015 22:53
von DelUser01
Hallo Werner,

Teamgröße 2+

Re: Programm zur Unterstützung eines Entwickler-Teams

Verfasst: Di, 10. Feb 2015 12:14
von satmax
Hallo Roland,

zum Kennenlernen ist sicher am besten so ein System mal alleine zu testen. Im Team gibt es dann noch ein paar Sachen die man beachten sollte. Ein wenig Absprache schadet da nicht...

Zuerst musst Du dich für ein System entscheiden. Ich habe bewusst auf ein Cloud System gesetzt, manche haben Angst davor... Ich sehe es als zusätzliche Datensicherung. Außerdem sind es bei mir zwei verschiedenen Standorte.

https://bitbucket.org/ bietet so eine Lösung für bis zu 5 Entwickler gratis. Das wäre dann dein HOST.

Lokal musst Du irgendeinen GIT Client installieren. Ich habe mich für Sourctree entschieden, gleicher Hersteller -> Windowsoberfläche -> gratis.

Via Sourctree checke ich meine Files ein. Das geht über zwei Stufen. In der ersten Stufe werden deine Files in das lokale Repository (Unterverzeichnis .git in Deinem Projektverzeichnis) eingecheckt. Im 2. Schritt kannst diese Files online einchecken (bitbucket).
Seit der letzten Version wird das alles auch von meinem Editor unterstützt (UEStudio). Ich finde es aber via Sourctree übersichtlicher.

Am Beginn nimm mal ein kleines Demoprojekt, aber schon mit mehreren Unterordnern. Binary Files sollten ausgenommen werden. Was ignoriert werden soll kannst via .gitignore einstellen.

Beispieldatei:

Code: Alles auswählen

// Verzeichnisse die ignoriert werden
[Dd]aten01*/
[Kk]ore01*/
map*/
FAXOUT*/
EXPORT01*/
Excel*/
IMAGES*/

# Erweiterungen die ignoriert werden
*.gid


#Windows Thumbnails ignorieren
Thumbs.db


#Visual Studio Dateien ignorieren
*.obj
*.exe
*.com
*.obk
*.pdb
*.user
*.aps
*.pch
*.vspscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.cache
*.ilk
*.log
*.dbf
*.dbt
*.ftp
*.zip
*.arj
*.cdx
*.ppo
*.cd1
*.cd2
*.nt1
*.fpt
*.png
*.bmp
*.jpg
*.cps
*.ocx
*.llx
*.lng
*.xpi


[Bb]in
[Dd]ebug*/
*.lib
*.sbr
obj/
[Rr]elease*/
_ReSharper*/
Infos:
http://de.wikipedia.org/wiki/Repository
http://de.wikipedia.org/wiki/Git

Bei wandert jedes Projekt in Git, früher VCS. Und zwar alles was irgendwie eine Textdatei ist. Also *.prg, *.ini, *.txt, *.me, *.ch, *.res, *.lst, usw.

Auch Tools mit Sourcecode kommen da rein: TopDown, otb, usw.

Meistens checke ich täglich ein, zumindest einmal pro Woche. Auf jeden Fall jedes noch so kleine Release das zum Kunden geht.

Auf Bitbucket hast Du dann auch ein Protokoll wer was und wann eingecheckt hat, was geändert wurde, usw... So kannst Du Dir auch einen kurzen Überblick verschaffen was in den letzten Tagen passiert ist, nicht nur auf Deinem Rechner.

IMHO: Softwareentwicklung ohne Sourcecodeverwaltung ist wie ein Drahtseilakt ohne Netz. :)