[解決済み】カレントディレクトリがGitリポジトリであるかどうかを確認する
2022-04-04 07:24:09
質問
zshでGitを管理するための一連のスクリプトを書いています。
カレントディレクトリがGitリポジトリであるかどうかを確認するにはどうすればよいですか?(Gitリポジトリでないときに、たくさんのコマンドを実行して、たくさんの
fatal: Not a git repository
のレスポンス)。
解決方法は?
bashの補完ファイルからコピーして、以下のような素朴な方法です。
# Copyright (C) 2006,2007 Shawn O. Pearce <[email protected]>
# Conceptually based on gitcompletion (http://gitweb.hawaga.org.uk/).
# Distributed under the GNU General Public License, version 2.0.
if [ -d .git ]; then
echo .git;
else
git rev-parse --git-dir 2> /dev/null;
fi;
それを関数でラップするか、スクリプトで使用することができます。
に適した1行の条件に凝縮されています。 バッシュ と zsh
[ -d .git ] && echo .git || git rev-parse --git-dir > /dev/null 2>&1
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] Git リポジトリを以前のコミットに戻すにはどうすればよいですか?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] Git リポジトリを特定のフォルダにクローンする方法は?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】マージの競合が発生した git stash pop の取り消し
-
[解決済み】ローカルに変更があるにもかかわらず、git pushが「すべて最新」と言う
-
[解決済み】git push >> fatal: 設定されたプッシュ先がありません。
-
[解決済み】gitの「not something we can merge」エラーの解決方法
-
[解決済み】マージが終了していません(MERGE_HEADは存在します)。
-
[解決済み] 複数のgitコミットを元に戻すには?
-
[解決済み] git status に fatal: bad object HEAD と表示される。
-
[解決済み] git commit signing failed: secret key not available.
-
[解決済み] ssh-keygen' は内部コマンドまたは外部コマンドとして認識されません。
-
[解決済み] git update-index --assume-unchanged <file> を元に戻す。