7 GNATS

Il FreeBSD Project utilizza GNATS per gestire i bug e le richieste di cambiamenti. Assicurati di usare edit-pr numero-pr su freefall quando effettui il commit di una correzione o di un suggerimento trovato in un PR GNATS per chiuderlo. È inoltre considerato gentile se trovi il tempo di chiudere ogni PR associato al tuo commit, se esistono. Puoi anche usare send-pr(1) tu stesso per proporre qualsiasi cambiamento che pensi debba essere fatto, a seguito di una maggiore revisione da parte di altre persone.

Puoi trovare di più su GNATS su:

Puoi far girare una copia locale di GNATS, e poi integrare l'albero GNATS di FreeBSD in esso tramite CVSup. In seguito puoi usare i comandi GNATS localmente, o usare altre interfacce, come tkgnats. Questo ti permette di interrogare il database dei PR senza bisogno di essere connesso a Internet.

Utilizzo di un albero GNATS locale

  1. Se non stai già scaricando l'albero GNATS, aggiungi questa riga al tuo supfile, e riesegui cvsup(1). Nota che siccome GNATS non è sotto il controllo di CVS non ha tag, quindi se lo stai aggiungendo al tuo supfile esistente deve apparire prima di ogni voce “tag=” dato che queste rimangono attive una volta impostate.

    gnats release=current prefix=/usr
    

    Questo metterà l'albero GNATS di FreeBSD in /usr/gnats. Puoi usare un file refuse per controllare quali categorie ricevere. Per esempio, per ricevere solo i PR docs, metti questa riga in /usr/local/etc/cvsup/sup/refuse [1].

    gnats/[a-ce-z]*
    

    Il resto di questi esempi assume che tu abbia scaricato solo la categoria docs. Modificali quando è necessario, a seconda delle categorie che tieni in sincronia.

  2. Installa il port GNATS da ports/databases/gnats. Questo metterà le varie directory GNATS sotto $PREFIX/share/gnats.

  3. Crea un symlink per le directory GNATS che aggiorni tramite CVSup sotto la versione di GNATS che hai installato.

    # cd /usr/local/share/gnats/gnats-db
    # ln -s /usr/gnats/docs
    

    Ripeti tante volte quanto necessario, a seconda di quante categorie GNATS tieni in sincronia.

  4. Aggiorna il file categories di GNATS con queste categorie. Il file è $PREFIX/share/gnats/gnats-db/gnats-adm/categories.

    # Questa categoria è obbligatoria
    pending:Categoria per i PR errati:gnats-admin:
    #
    # Categorie di FreeBSD
    #
    docs:Bug di Documentazione:freebsd-doc:
    
  5. Esegui $PREFIX/libexec/gnats/gen-index per ricreare l'indice GNATS. L'output deve essere reindirizzato su $PREFIX/share/gnats/gnats-db/gnats-adm/index. Puoi fare questo periodicamente da cron(8), o eseguire cvsup(1) da uno script di shell che fa anche questo.

    # /usr/local/libexec/gnats/gen-index \
            > /usr/local/share/gnats/gnats-db/gnats-adm/index
    
  6. Verifica la configurazione interrogando il database dei PR. Questo comando visualizza i PR docs aperti.

    # query-pr -c docs -s open
    

    Anche altre interfacce, come quella fornita dal port databases/tkgnats, dovrebbero funzionare correttamente.

  7. Prendi un PR e chiudilo.

Nota: Questa procedura funziona solo per permetterti di visualizzare ed interrogare i PR localmente. Per modificarli o chiuderli dovrai ancora loggarti su freefall e farlo da lì.

Note

[1]

Il percorso preciso dipende dall'impostazione *default base nel tuo supfile.

Questo, ed altri documenti, possono essere scaricati da ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Per domande su FreeBSD, leggi la documentazione prima di contattare <questions@FreeBSD.org>.
Per domande su questa documentazione, invia una e-mail a <doc@FreeBSD.org>.