Domanda

Ho un repository con un sacco di cartelle e voglio che alcuni sviluppatori ottengano solo due o tre di quelle cartelle quando effettuano un checkout sul repository. Come posso fare in modo che le cartelle non vengano visualizzate per impostazione predefinita e quindi aggiungerle solo quando desidero concedere l'accesso.

Sto usando VisualSVN per il server SVN e quello che ho fatto è stato dato l'accesso in lettura al livello superiore, quindi ho negato l'accesso a ogni sottocartella, quindi ho cambiato il rifiuto di leggere / scrivere su cartelle a cui voglio che ogni sviluppatore acceda . Questo è un problema perché ogni volta che aggiungo una nuova cartella, devo entrare e negare l'accesso su di essa.

Ho provato a concedere in lettura / scrittura solo le sottocartelle, ma quando provano a fare il checkout sul genitore dà loro un errore. Voglio solo che gli sviluppatori debbano fare un checkout nella cartella di livello superiore.

Ecco cosa voglio:

RepoFolder       (dev1 checks out this)
  - References   (this shows to dev1)
  - Project1     (this shows to dev1)
  - Project2     (this does not show to dev1)
  - Project3     (this does not show to dev1)
  - Project4     (this does not show to dev1)
È stato utile?

Soluzione

Non penso che sia possibile fare esattamente quello che vuoi, ovvero lasciare che tutti guardino http : //example.com/svn/repos/ e, a seconda di chi sei, vedi cose diverse.

Sei sulla strada giusta negando l'accesso alle cartelle. Quello che puoi fare è creare una "vista" cartella i determinati sviluppatori. Supponiamo che tutti i tuoi progetti assomiglino

http://example.com/svn/repos/projects/
   +- References
   +- Project1
   +- Project2

Aggiungi un'altra struttura di cartelle chiamata viste.

http://example.com/svn/repos/
   + projects/       
       +- References
       +- Project1
       +- Project2
   + views/
       +- View1

Entrambe le viste e View1 non sono altro che cartelle semplici. Il trucco è impostare svn: externals proprietà nella cartella View1 in http://example.com/svn/ repos / progetti / Riferimenti e http://example.com/svn/repos/ progetti / Project1 . Quando qualcuno verifica View1 , controlla anche References e Project1 sotto di esso. Spero che questo aiuti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top