Domanda

Mentre la valutazione di Visual Studio 2010 Beta 2, vedo che nella directory convertito, la mia vcproj i file sono diventati vcxproj File. Ci sono anche vcxproj.filter file accanto a ogni progetto che sembrano contenere una descrizione della struttura delle cartelle (\ File di origine, \ File di intestazione, ecc.).

Pensa che questi file di filtro dovrebbero essere mantenute per utente, o dovrebbero essere condivisi tra l'intero gruppo dev e controllato in SCC?

Il mio pensiero attuale è quello di verificare loro, ma mi chiedo se ci sono ragioni per non farlo, o forse buone ragioni per cui dovrei sicuramente li check-in.

Il vantaggio evidente è che le strutture di cartelle corrisponderanno se sto guardando qualcun altro macchina, ma forse piacerebbe a riorganizzare le cose logicamente?

È stato utile?

Soluzione

Le versioni precedenti di Visual Studio (almeno le versioni 6.0 e il 2008) che memorizzano le informazioni nel proprio file di progetto (DSP e .vcproj i file rispettivamente), che naturalmente è bene aggiungere a SCC.

Non riesco a pensare a nessun motivo per non includere questo file .filter in SCC

Altri suggerimenti

Abbiamo volutamente tirato la .filter. file di informazioni fuori dal .vcproj quando abbiamo tradotto al .vcxproj formato di MSBuild. Uno dei motivi è esattamente ciò che lei ha sottolineato, che i filtri sono puramente una vista logica, e diversi membri del team potrebbe voler diversi punti di vista. L'altro è che a volte la build è impostato per controllare il timestamp del file di progetto, e innescare una ricostruzione se è cambiato - perché questo può significare ci sono diversi file di origine per costruire, o impostazioni diverse, ecc non lo faccio ricordo se abbiamo effettivamente fornito con la build trigging in quel modo, ma l'idea era che non volevamo per innescare una ricostruzione semplicemente perché i filtri cambiati, in quanto non influenzano la generazione.

Ho appena scoperto che se si utilizza Git è possibile contrassegnare i file .filter di essere trattato come un sindacato per la fusione per rendere più semplice. Basta aggiungere la riga:

*.vcxproj.filters merge=union

al vostro file .gitattributes.

Utilizzando .gitattributes per evitare conflitti fondersi per maggiori dettagli.

Non dovrebbe essere aggiunto in caso si utilizza CMake (o strumenti di compilazione simili) per generare file come *.sln, *.vcxproj, *.vcxproj.filters ecc, perché questi file può contenere il percorso completo per la vostra cartella del progetto e altri solo il tuo computer cartelle specifiche .

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