2009-03-25 12 views
1

Ich führe ein SVN-Projekt mit optionalen Komponenten - aus mehreren externen Repositories, und eine Reihe von Benutzern mit unterschiedlichen Zugriffsberechtigungen auf diese externen.svn: externals und Berechtigungen

Der Befehl 'svn update' wird beim ersten Projekt abgebrochen, das nicht abgerufen werden kann.

Gibt es eine bessere oder Standardmethodik für svn: externals, um erfolgreiche Checkouts für alle Benutzer zu ermöglichen?

BEARBEITEN: Ich habe keine Eigentumsrechte/Kontrolle über die externen Projekte, um Zugriff zu gewähren, und die Spiegelung der externen Elemente ist von den Unternehmensrichtlinien nicht erlaubt. Da die externen Komponenten optionale Komponenten unterstützen, werden Benutzer mit weniger Berechtigungen die optionalen Komponenten nicht verwalten. Sie müssen jedoch noch andere Externals überprüfen, und "svn up" ist sehr auftragsabhängig.

Ich weiß, dass das Korrigieren von Berechtigungen und das Aufteilen in Unter-Repositories dies zu einem Nicht-Problem macht, aber ich bin immer noch interessiert zu wissen, ob es einen Mittelweg gibt.

Antwort

3

Was genau möchten Sie tun, wenn ein Benutzer Zugriff auf ein Projekt hat, aber nicht das externe Projekt? Wenn die beiden stark verwandt sind, sollte der Benutzer Zugriff auf beide haben. Wenn die beiden nicht stark verwandt sind, warum werden sie überhaupt als Äußerlichkeiten hinzugefügt?

Sie könnten vielleicht jedem Benutzer nur lesenden Zugriff auf alle externen Daten geben und nur denjenigen Zugriff gewähren, die sie benötigen.

2

Wenn dies ein ausreichend großes Problem ist, können Sie Ihren Arbeitsbereich so umstrukturieren, dass Sie eine oberste Ebene haben, die nur aus externen Referenzen auf die Teile der Projekte besteht. Dann haben verschiedene Leute verschiedene Top-Level, um die externen zu bekommen, die sie brauchen.

Braucht viel Management und dachte tho.

Etwas wie:

/Projects 
/Project1 
    /trunk 
/Project2External 
    /tag1 
/Workspaces 
/Project1 
    /DevA - svn:external Project1/trunk Project2/tag1 
    /DevB - svn:external Project1/trunk 

Aber Sie würden sein müssen bereit, das Projekt so zu restrukturieren, und darüber nachdenken, was es zu tun, wenn zu den Äußerlichkeiten globale Veränderungen ist. Aber auf diese Weise würden Sie immer noch am Stamm von Projekt1 arbeiten, also gibt es kein zusätzliches Herumspielen.

Verwandte Themen