GitHubのstatusについてまとめています。
GitHubサービスのステータスを確認する画面
以下のリンク先で、GitHubで提供しているサービスのステータスを確認できます。
Git操作、API、ウェブフック、issues、Pull Requests、GitHub Actions、GitHub Packages、GitHub Pagesのステータス確認が可能です。緑のチェックマークがついていれば、サービスは正常に稼働しています。
ページ下部の「Incident History」で、過去に発生したインシデント(障害)の履歴が確認できます。例えば、2021年7月1日にウェブフックに関するインシデントが発生しており、以下のように表示されています。
Incident with Webhooks (ウェブフックに関するインシデント)
This incident has been resolved. (このインシデントは解決済み)
Jul 1, 10:19 – 11:35 UTC
Gitコマンドで、GitHubのリポジトリのステータスを確認する
Gitコマンドにて、ローカルで作業中のソースとリポジトリのステータスを確認することが可能です。
関連)ステータスチェックについて – GitHub Docs
git statusをローカル環境の作業ディレクトリで実行したとき、nothing to commit, working tree cleanと表示される場合、作業ディレクトリとリポジトリが完全に同じであることを表しています。
$ git status ブランチ main Your branch is up to date with 'origin/main'. nothing to commit, working tree clean
「Changes not staged for commit」と表示される場合は、ローカルディレクトリ下のファイルが更新されているがgit管理対象となっていないことを表しています。
git status ブランチ main Your branch is up to date with 'origin/main'.
Changes not staged for commit:
(use “git add …” to update what will be committed)
(use “git checkout — …” to discard changes in working directory)
modified: sample.txt
no changes added to commit (use “git add” and/or “git commit -a”)
上記の場合、sample.txtが変更されているがgit管理下にないことを表しています。git addなどのコマンドでファイルをgit管理するよう促されます。
git addでsample.txtをgit管理すると、git statusの結果は以下のように変化します。
$ git status ブランチ main Your branch is up to date with 'origin/main'. コミット予定の変更点: (use "git reset HEAD ..." to unstage) modified: sample.txt
git statusで表示されるファイルがあまりにも多い場合は、-s(–short のエイリアス)を付与してショート形式で表示するのが便利です。ファイルのステータスがアルファベット大文字で表されます。なお、デフォルトでは–long(ロングフォーマット)になっています。
例えば、以下の表示の場合は、sample.txtが変更されていることを表しています。
$ git status -s M sample.txt
アルファベットとステータスの対応は以下の通りです。
- ” =変更なし
- M =変更
- A =追加
- D =削除
- R =名前が変更されました
- C =コピー
- U =更新されたが、マージされていない
関連)Git – git-status Documentation
日本語ファイル名がgit statusで文字化けするのを修正する方法
git statusを実行したとき、日本語ファイル名が対象だとファイル名表示場文字化け(スラッシュ+数値にエスケープされる)してしまいます。以下は、「日本語名のファイル.txt」が表示されるはずが、modified:の箇所が文字化けしてします。
$ git status ブランチ main Your branch is up to date with 'origin/main'. コミット予定の変更点: (use "git reset HEAD ..." to unstage) modified: sample.txt Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git checkout -- ..." to discard changes in working directory) modified: "\346\227\245\346\234\254\350\252\236\345\220\215\343\201\256\343\203\225\343\202\241\343\202\244\343\203\253.txt"
git statusでの文字化けを解消するには、以下を実行します。
【関連記事】
▶GitHubは日本語でのヘルプ完備 リポジトリ内での日本語使用や日本語でのサポートもあり
$ git config --global core.quotepath false $ git status ブランチ main Your branch is up to date with 'origin/main'. コミット予定の変更点: (use "git reset HEAD ..." to unstage) modified: sample.txt Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git checkout -- ..." to discard changes in working directory) modified: 日本語名のファイル.txt
日本語のファイル名が無事に表示できました。
まとめ
- https://www.githubstatus.com/にアクセスすると、githubのサービスの稼働状況が確認できる
- git statusでローカル環境のファイルとリポジトリとの同期を確認できる
- git statusが文字化けする場合は、git config –global core.quotepath falseを実行