Silence git (ingen feil, ingen effekt, ikke si et ord)

stemmer
3

Jeg bruker git å administrere noen tilpassede pakker. Hvis pakken ikke er i første repo, jeg ønsker å kjøre en annen kommando som prøver en annen kilde. Jeg trenger ikke å fortelle brukeren at dette skjer. Brukeren trenger ikke å vite git eksisterer.

if ! git clone git@gitlab.com:username/repo directory -q
        then
            #do something else
        fi

git skriver fortsatt en fatal feil i konsollen selv med -q.

Så, hvordan kan jeg slå av litt git?

Publisert på 21/05/2015 klokken 15:02
kilden bruker
På andre språk...                            


2 svar

stemmer
8

To veier:

git clone git@gitlab.com:username/repo directory > /dev/null 2>&1 - Eldre bash

og:

git clone git@gitlab.com:username/repo directory &> /dev/null - nyere bash (Above versjon 4 i henhold til link nedenfor)

For mer informasjon kan du lese om I / O omadressering i Bash . Egentlig hva du gjør her er å omdirigere både stdoutog stderrtil /dev/null, som er "intet".

Svarte 21/05/2015 kl. 15:16
kilden bruker

stemmer
0

git klone git@gitlab.com: brukernavn / repo katalogen> / dev / null 2> & 1 - Eldre bash

Ovenfor vil være mer kompatibel,

Svarte 23/08/2017 kl. 11:11
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more