Domanda

Ad esempio, invece di scrivere quanto segue:

element * .../my_branch_01/LATEST
element * .../base_branch/LATEST -mkbranch my_branch_01

Vorrei scrivere qualcosa del genere:

MY_BRANCH=my_branch_01
element * .../%MY_BRANCH%/LATEST
element * .../base_branch/LATEST -mkbranch %MY_BRANCH%

È possibile?Qual è la sintassi corretta?

È stato utile?

Soluzione

L'unico modo nativo per farlo in ClearCase è utilizzare attributo All'interno di una specifiche di configurazione.

Secondo il selettore di versione regole, puoi creare una regola di "selezione per query", basata ad esempio su un attributo:

element * ...{MY_ATTRIBUTE_NAME=="aValue"}

selezionerebbe il LATEST versione su qualsiasi ramo con un attributo 'MY_ATTRIBUTE_NAME' con 'aValue' dentro.

Ciò significa che devi modificare il valore dell'attributo sul vecchio ramo, inserirlo nel nuovo ramo, 'cleartool setcs' di nuovo la tua visualizzazione e dovresti avere un nuovo contenuto basato sulla selezione di una nuova versione.

Non è molto semplice, ma potrebbe funzionare, ad eccezione della parte mkbranch (che necessita di un nome fisso).


Per quanto riguarda La risposta di GeekCyclist, alcuni commenti:

La soluzione per includere una specifica di configurazione comune può funzionare per la soluzione Base ClearCase, ma:

  • deve essere in una condivisione disponibile per tutti gli sviluppatori interessati
  • IL setcs è infatti necessario che Ccuses view_server pulisca le sue cache e rivaluti le specifiche di configurazione correnti, che sono archiviate nel file config_spec nella directory di archiviazione della vista.Ciò comprende:
    • Valutazione di regole temporali con specifiche non assolute (ad esempio, adesso, martedì)
    • Rivalutazione delle regole –config, possibilmente selezionando oggetti derivati ​​diversi rispetto a prima
    • Rilettura dei file nominati nelle regole di inclusione
  • tutti gli altri sviluppatori devono essere informati quando cambia il file delle specifiche di configurazione incluso comune (non è inclusa alcuna notifica nativa in ClearCase)

Se è necessario avere un "ambiente" (ad es.una "vista" o area di lavoro) con un contenuto variabile (a seconda di un ramo diverso), è necessario definire un collegamento simbolico (o un sostituto di Windows) che punti a viste diverse (ciascuna con le proprie specifiche di configurazione)

In questo modo, devi solo modificare il collegamento (o il percorso sostituito) per modificare le specifiche di configurazione associate a un dato fisso sentiero.

Altri suggerimenti

E 'stato un po' da quando ho lavorato in ClearCase (siamo passati a Subversion), ma se non ricordo male non v'è alcun modo per farlo nativo di ClearCase.

Si può usare o scrivere un generatore di script che creerebbe il file spec e quindi includere che nella specifica attuale:

element * CHECKEDOUT
include scripted_file_output

Quindi eseguire

cleartool setcs -current

Il problema di questo approccio è che credo che la comprendono spec avrebbe bisogno di essere rigenerato e le setcs cleartool eseguito ogni volta che si modifica il valore di MY_BRANCH.

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