Codici di errore
Quando una funzione API plug-in del controllo del codice sorgente restituisce un errore, si prevede che sia uno dei codici di errore seguenti. Tutti gli errori sono negativi, avvisi o codici di errore informativi sono positivi e l'esito positivo è 0.
Codice di errore | Valore | Descrizione |
---|---|---|
SCC_I_SHARESUBPROJOK |
7 | Il plug-in supporta l'aggiunta di file dal controllo del codice sorgente in due passaggi. Per altre informazioni, vedere SccSetOption. |
SCC_I_FILEDIFFERS |
6 | Il file locale è diverso dal file nel database di controllo del codice sorgente, ad esempio SccDiff può restituire questo valore. |
SCC_I_RELOADFILE |
5 | Il file locale è stato modificato durante l'operazione di controllo del codice sorgente; l'IDE deve ricaricare il file, se possibile. |
SCC_I_FILENOTAFFECTED |
4 | Il file non è interessato. |
SCC_I_PROJECTCREATED |
3 | Il progetto è stato creato durante l'operazione di controllo del codice sorgente, ad esempio durante una chiamata a SccOpenProject quando SCC_OP_CREATEIFNEW viene specificato il flag. |
SCC_I_OPERATIONCANCELED |
2 | Operazione annullata. |
SCC_I_ADV_SUPPORT |
1 | Il plug-in supporta opzioni avanzate per il comando specificato. Per altre informazioni, vedere SccGetCommandOptions. |
SCC_OK |
0 | Esito positivo. |
SCC_E_INITIALIZEFAILED |
-1 | Errore: inizializzazione non riuscita. |
SCC_E_UNKNOWNPROJECT |
-2 | Errore: il progetto è sconosciuto. |
SCC_E_COULDNOTCREATEPROJECT |
-3 | Errore: impossibile creare il progetto. |
SCC_E_NOTCHECKEDOUT |
-4 | Errore: il file non è estratto. |
SCC_E_ALREADYCHECKEDOUT |
-5 | Errore: il file è già estratto. |
SCC_E_FILEISLOCKED |
-6 | Errore: il file è bloccato. |
SCC_E_FILEOUTEXCLUSIVE |
-7 | Errore: il file viene estratto esclusivamente. |
SCC_E_ACCESSFAILURE |
-8 | Si è verificato un problema durante l'accesso al sistema di controllo del codice sorgente, probabilmente a causa di problemi di rete o contesa. È consigliabile riprovare. |
SCC_E_CHECKINCONFLICT |
-9 | Errore: si è verificato un conflitto durante l'archiviazione. |
SCC_E_FILEALREADYEXISTS |
-10 | Errore: il file esiste già. |
SCC_E_FILENOTCONTROLLED |
-11 | Errore: il file non è sotto il controllo del codice sorgente. |
SCC_E_FILEISCHECKEDOUT |
-12 | Errore: il file è estratto. |
SCC_E_NOSPECIFIEDVERSION |
-13 | Errore: non esiste alcuna versione specificata. |
SCC_E_OPNOTSUPPORTED |
-14 | Errore: l'operazione non è supportata. |
SCC_E_NONSPECIFICERROR |
-15 | Errore non specifico. |
SCC_E_OPNOTPERFORMED |
-16 | Errore, l'operazione non è stata eseguita. |
SCC_E_TYPENOTSUPPORTED |
-17 | Errore: il tipo di file, ad esempio binario, non è supportato dal sistema di controllo del codice sorgente. |
SCC_E_VERIFYMERGE |
-18 | Il file è stato unito automaticamente ma non è stato controllato perché è in attesa di verifica utente. |
SCC_E_FIXMERGE |
-19 | Il file è stato unito automaticamente ma non è stato archiviato a causa di un conflitto di merge che deve essere risolto manualmente. |
SCC_E_SHELLFAILURE |
-20 | Errore dovuto a un errore della shell. |
SCC_E_INVALIDUSER |
21- | Errore: l'utente non è valido. |
SCC_E_PROJECTALREADYOPEN |
22 | Errore: il progetto è già aperto. |
SCC_E_PROJSYNTAXERR |
-23 | Errore di sintassi del progetto. |
SCC_E_INVALIDFILEPATH |
24- | Errore: il percorso del file non è valido. |
SCC_E_PROJNOTOPEN |
-25 | Errore: il progetto non è aperto. |
SCC_E_NOTAUTHORIZED |
26- | Errore: l'utente non è autorizzato a eseguire questa operazione. |
SCC_E_FILESYNTAXERR |
-27 | Errore di sintassi del file. |
SCC_E_FILENOTEXIST |
-28 | Errore, il file locale non esiste. |
SCC_E_CONNECTIONFAILURE |
-29 | Errore: si è verificato un errore di connessione. |
SCC_E_UNKNOWNERROR |
-30 | Errore sconosciuto. |
SCC_E_BACKGROUNDGETINPROGRESS |
-31 | L'operazione get in background è attualmente in corso. |
Macro fornite per il controllo rapido
IS_SCC_ERROR(rtn) (((rtn) < 0) ? TRUE : FALSE)
IS_SCC_SUCCESS(rtn) (((rtn) == SCC_OK) ? TRUE : FALSE)
IS_SCC_WARNING(rtn) (((rtn) > 0) ? TRUE : FALSE)
Osservazioni:
Tutte le funzioni API plug-in del controllo del codice sorgente (ad eccezione di SccAdd, SccCheckin e SccDiff) hanno esito positivo quando i file locali passati come argomenti non esistono nella cartella di lavoro. Ad esempio, l'IDE può eseguire una chiamata a SccCheckout o SccUncheckout in un file che non esiste nella cartella di lavoro, ma esiste nel sistema di controllo del codice sorgente. Questa chiamata avrà esito positivo. Solo quando non è presente alcun file nella cartella di lavoro o nel sistema di controllo del codice sorgente si prevede che la funzione non riesca.
Alcune funzioni, ad esempio SccAdd
e SccCheckin
, devono restituire SCC_E_FILENOTEXIST
in modo specifico quando il file nella cartella di lavoro non esiste. È previsto che altre funzioni abbiano esito positivo quando il file di lavoro non esiste, se le funzioni operano su un nome di file valido nel sistema di controllo del codice sorgente.
Il plug-in del controllo del codice sorgente non deve fare ipotesi relative ai privilegi di un file nella cartella di lavoro, anche se il plug-in aveva contrassegnato il file di sola lettura durante un'operazione. Un file nella cartella di lavoro può essere spostato, eliminato e modificato all'esterno del controllo del plug-in.