2016-10-31 15 views

答えて

1

私はgit ls-remoteを使ってレポが存在するかどうかをテストできると思います。

これでリポジトリずにフォルダでこれを実行してみてください:

git ls-remote https://github.com/git/git 
1

コマンドはない「スロー・エラー」を行います。彼らはstderrにメッセージを出力し、ゼロ以外の終了コードを使用します。

エラーメッセージをミュートするには、stderr/dev/nullにリダイレクトします。ゼロ以外の終了コードを無視する

git remote rm nonexistent 2>/dev/null 

、あなたはこのような|| :を使用することができます。

git remote rm nonexistent 2>/dev/null || : 

この最後のコマンドの終了コードは常にリモコンが存在する場合、それは0になります。 になります削除されていない場合は、エラーメッセージは破棄されます。

ただし、注意が必要です。リモートが存在して何らかの理由で削除に失敗した場合、エラーメッセージと終了コードは表示されません。これは、リポジトリが存在しないときに発生する終了コードが128である場合にのみ、エラーメッセージを隠すことによって改善することができます。しかし、私はそれがそれの価値があるとは思わない:

out=$(git remote rm $repo 2>&1) 
[ $? = 128 ] || echo "$out" 
関連する問題