npm コマンドの使い方まとめ:install・run・ci・update の基本

npm コマンドの使い方まとめ:install・run・ci・update の基本

npm install              # package.json の依存をインストール
npm install <pkg>        # パッケージを追加
npm install -D <pkg>     # 開発依存として追加
npm run <script>         # scripts を実行
npm ci                   # クリーンインストール(CI向け)
npm update               # パッケージを更新
npm uninstall <pkg>      # パッケージを削除

npm とは

Node.js に同梱されているパッケージマネージャーです。npm install でパッケージを追加し、package.json で依存関係を管理します。


install:パッケージをインストールする

依存パッケージをすべてインストール

npm install
# または
npm i

package.jsondependenciesdevDependencies に書かれたパッケージを node_modules/ にインストールします。リポジトリをクローンした直後に実行するコマンドです。

パッケージを追加する

npm install axios
npm i axios         # 短縮形

dependencies に追加されます。本番環境でも使うパッケージ(ライブラリなど)に使います。

開発依存として追加する(-D / --save-dev)

npm install -D eslint
npm install --save-dev eslint

devDependencies に追加されます。テストツールやビルドツールなど、開発時にだけ使うパッケージに使います。

バージョンを指定して追加する

npm install react@18
npm install react@18.2.0

グローバルにインストールする(-g)

npm install -g typescript

プロジェクト外でも使えるようにグローバルにインストールします。CLI ツールに使いますが、プロジェクト内では devDependencies に入れる方がバージョン管理しやすいです。


run:スクリプトを実行する

package.jsonscripts に定義したコマンドを実行します。

{
  "scripts": {
    "dev": "vite",
    "build": "tsc && vite build",
    "test": "vitest",
    "lint": "eslint src"
  }
}
npm run dev
npm run build
npm run test
npm run lint

teststartrun を省略できます。

npm test    # npm run test と同じ
npm start   # npm run start と同じ

スクリプトに引数を渡す

npm run test -- --watch

-- の後に引数を渡すと、スクリプト側のコマンドに引数が渡されます。


ci:クリーンインストール

npm ci

npm install と似ていますが、CI/CD 環境向けの厳格なインストールです。

npm install npm ci
package-lock.json 更新することがある 変更しない(存在必須)
既存の node_modules/ 差分だけ更新 削除してから再インストール
バージョンの扱い 条件を満たす範囲で柔軟に解決 package-lock.json に固定
用途 開発環境での追加・更新 CI/CD・本番デプロイ

再現性が重要な場面では npm ci を使います。


update:パッケージを更新する

npm update

package.json のバージョン範囲(^~)に従ってアップデートします。メジャーバージョンは上げません。

npm update react

特定のパッケージだけ更新します。

更新可能なパッケージを確認する

npm outdated
Package  Current  Wanted  Latest  Location
react    18.0.0   18.3.1  19.1.0  myapp
  • Wantedpackage.json の範囲内で最新のバージョン
  • Latest:レジストリ上の最新バージョン(メジャー含む)

uninstall:パッケージを削除する

npm uninstall axios
npm uninstall -D eslint    # devDependencies から削除
npm uninstall -g typescript  # グローバルから削除

list:インストール済みパッケージを確認する

npm list
npm ls          # 短縮形
npm list --depth=0    # 直接の依存のみ表示(推移的依存は非表示)
npm list react        # 特定パッケージのバージョンを確認
npm list -g --depth=0 # グローバルインストール済みを確認

その他のよく使うコマンド

init:package.json を作成する

npm init
npm init -y    # 質問なしでデフォルト値で作成

audit:セキュリティの脆弱性を確認する

npm audit
npm audit fix          # 自動修正
npm audit fix --force  # メジャーバージョンアップを含む強制修正

exec / npx:インストールせずに実行する

npx create-react-app my-app
npx prettier --write .

node_modules/.bin/ 内のコマンドや、インストールされていないパッケージを一時的に実行します。


まとめ

コマンド 説明
npm install / npm i 依存をすべてインストール
npm install <pkg> パッケージを追加(dependencies)
npm install -D <pkg> 開発依存として追加(devDependencies)
npm install -g <pkg> グローバルにインストール
npm run <script> scripts を実行
npm ci クリーンインストール(CI向け)
npm update パッケージを更新
npm outdated 更新可能なパッケージを確認
npm uninstall <pkg> パッケージを削除
npm list --depth=0 インストール済みパッケージ一覧
npm audit 脆弱性チェック
npx <pkg> インストールせずに一時実行

npm のバージョン確認方法は「npm バージョン確認:コマンドと確認方法まとめ」を参照してください。

pnpm との違いについては「pnpmとnpmの違い:コマンド対応表とインストール方法」も参照してください。

docker compose の使い方:up・down・build コマンドまとめ

docker compose の使い方:up・down・build コマンドまとめ

docker compose up -d        # バックグラウンドで起動
docker compose down         # コンテナを停止・削除
docker compose ps           # 起動中のサービスを確認
docker compose logs -f      # ログをリアルタイムで確認
docker compose exec web sh  # コンテナに入る
docker compose build        # イメージをビルド

docker compose とは

複数のコンテナをまとめて管理するツールです。compose.yml(または docker-compose.yml)にサービスの構成を書いておくと、コマンド一つでアプリ全体を起動・停止できます。

Web サーバーとデータベースを組み合わせた開発環境を作るときによく使われます。

v1 と v2 の違い

v1(非推奨) v2(現在)
コマンド docker-compose up docker compose up
インストール 別途インストール Docker Desktop に同梱

v2 ではコマンドのハイフン(docker-compose)がスペース(docker compose)に変わりました。現在は v2 を使うのが標準です。


インストールの確認

Docker Desktop を入れていれば docker compose v2 は同梱されています。

docker compose version
# Docker Compose version v2.x.x

インストール方法は「DockerとDocker Composeのバージョン確認方法まとめ」を参照してください。


compose.yml の基本構造

services:
  web:
    build: .
    ports:
      - "3000:3000"
    volumes:
      - .:/app
    environment:
      - NODE_ENV=development
    depends_on:
      - db

  db:
    image: postgres:16
    environment:
      POSTGRES_PASSWORD: password
    volumes:
      - db_data:/var/lib/postgresql/data

volumes:
  db_data:

services: に起動するコンテナを定義します。depends_on: を使うとサービスの起動順序を制御できます。


よく使うコマンド

起動する(up)

docker compose up

フォアグラウンドで起動します。ログが流れ続けるので、開発中にログを確認しながら使う場合に便利です。

docker compose up -d

-d(detach)でバックグラウンド起動します。ターミナルを占有しません。

docker compose up --build

イメージを再ビルドしてから起動します。Dockerfile を変更したときに使います。

docker compose up web

特定のサービスだけ起動します。


停止・削除する(down)

docker compose down

コンテナを停止して削除します。

docker compose down -v

-v でボリュームも一緒に削除します。データを完全にリセットしたいときに使います。


状態を確認する(ps)

docker compose ps

起動中のサービスの状態を確認します。

NAME          IMAGE     COMMAND   SERVICE   CREATED         STATUS
myapp-web-1   myapp     ...       web       2 minutes ago   Up 2 minutes
myapp-db-1    postgres  ...       db        2 minutes ago   Up 2 minutes

ログを確認する(logs)

docker compose logs

全サービスのログを表示します。

docker compose logs web

特定サービスのログを表示します。

docker compose logs -f

-f でリアルタイムにログを流し続けます(Ctrl+C で終了)。

docker compose logs --tail=50 web

直近50行だけ表示します。


コンテナに入る(exec)

docker compose exec web sh

起動中のコンテナ内でシェルを起動します。Alpine ベースのイメージは bash がない場合があるので sh を使います。

docker compose exec web bash

Ubuntu/Debian ベースのイメージでは bash が使えます。

docker compose exec db psql -U postgres

データベースに直接接続する場合の例です。


ビルドする(build)

docker compose build

compose.ymlbuild: を指定したサービスのイメージをビルドします。

docker compose build web

特定サービスだけビルドします。

docker compose build --no-cache

キャッシュを使わずにビルドします。依存パッケージの問題が疑われるときに使います。


一時的にコマンドを実行する(run)

docker compose run --rm web node -v

起動していないコンテナで一時的にコマンドを実行します。--rm を付けると実行後にコンテナを削除します。

exec との違い:exec は起動中のコンテナに対して使い、run は新しいコンテナを起動してコマンドを実行します。


停止・再起動する(stop / restart)

docker compose stop       # コンテナを停止(削除はしない)
docker compose start      # 停止したコンテナを再開
docker compose restart    # 再起動
docker compose restart web  # 特定サービスだけ再起動

イメージを取得・削除する

docker compose pull       # イメージを最新に更新
docker compose rm         # 停止中のコンテナを削除

まとめ

コマンド 説明
docker compose up -d バックグラウンドで起動
docker compose up --build イメージを再ビルドして起動
docker compose down 停止・コンテナ削除
docker compose down -v 停止・コンテナ削除・ボリューム削除
docker compose ps 起動状態を確認
docker compose logs -f ログをリアルタイム確認
docker compose exec <service> sh コンテナ内に入る
docker compose build --no-cache キャッシュなしでビルド
docker compose run --rm <service> <cmd> 一時コンテナでコマンド実行
docker compose restart <service> 特定サービスを再起動

macOS でのコンテナ環境については「Colima 入門:Docker Desktop なしで macOS にコンテナ環境を構築する」も参照してください。

GitHub Copilot 入門:料金・VS Code・CLI の設定まとめ

GitHub Copilot 入門:料金・VS Code・CLI の設定まとめ

プラン 月額 コード補完 チャット 向いている用途
Free 無料 2,000回/月 50回/月 お試し
Pro $10 無制限 AIクレジット込み 個人開発
Business $19/人 無制限 AIクレジット込み 小〜中規模チーム
Enterprise $39/人 無制限 AIクレジット込み 大規模・SSO必須

GitHub Copilot とは

GitHub が提供する AI コーディングアシスタントです。コードを書いている途中に次の行や関数全体を補完したり、チャットで質問しながらコードを書き直したりできます。

2026年6月から課金体系が刷新され、チャットやエージェント機能は GitHub AI クレジット を消費する仕組みになりました。コード補完は引き続きクレジットを消費しません。


プランと料金

個人向け

プラン 月額(USD) 年額(USD) AIクレジット
Free 無料 月50回相当(チャット)
Pro $10 $100 月$10分相当
Pro+ $39 $390 月$39分相当

Free プランの制限(2026年7月時点)

  • コード補完:2,000回/月
  • チャット・エージェント:50回/月相当
  • 使えるモデルは自動選択のみ(モデル指定不可)

個人で毎日使うなら Pro($10/月) が現実的な選択です。

法人向け

プラン 月額(USD/人) 主な追加機能
Business $19 管理コンソール・利用ポリシー設定
Enterprise $39 SSO(SAML/SCIM)・IPインデックス・監査ログ

VS Code でのセットアップ

1. 拡張機能をインストールする

VS Code の拡張機能タブを開き(Cmd+Shift+X / Ctrl+Shift+X)、「GitHub Copilot」を検索してインストールします。発行元が GitHub になっているものを選んでください。

GitHub Copilot
GitHub Copilot Chat

2つセットでインストールするとチャット機能も使えます。

2. GitHub アカウントでサインイン

インストール後、右下のステータスバーに Copilot アイコンが表示されます。クリックするとサインインを求められるので、Copilot のサブスクリプションを持っているアカウントでログインします。

アイコンが灰色 → 無効、色付き → 有効の状態です。

3. コード補完を使う

コードを書き始めると、グレーのテキストで補完候補が表示されます。

操作 キー(Mac) キー(Windows/Linux)
候補を確定 Tab Tab
次の候補を表示 Option+] Alt+]
前の候補を表示 Option+[ Alt+[
キャンセル Esc Esc

4. インラインチャットを使う

コードを選択した状態で Cmd+ICtrl+I)を押すと、エディタ内にチャット欄が開きます。

「この関数にエラーハンドリングを追加して」
「日本語コメントを追加して」
「このコードをリファクタリングして」

といった指示を自然言語で入力すると、コードを直接書き換えてくれます。

5. チャットパネルを使う

サイドバーの Copilot アイコンをクリックするとチャットパネルが開きます。コードベース全体を参照しながら質問できます。

「このプロジェクトのディレクトリ構成を説明して」
「src/utils/auth.ts の認証フローを解説して」

GitHub Copilot CLI のセットアップ

ターミナルで使える gh copilot コマンドです。「このコマンドどう書くんだっけ?」という場面で役立ちます。

インストール

gh(GitHub CLI)が必要です。未インストールの場合は先に入れてください。

brew install gh

gh のインストール後、Copilot 拡張を追加します。

gh extension install github/gh-copilot

認証

gh auth login
gh auth refresh -s copilot

gh auth login 実行済みの場合は gh auth refresh だけで OK です。

動作確認

gh copilot --version

gh copilot の使い方

コマンドを提案してもらう(suggest)

「やりたいこと」を日本語で入力すると、コマンドを提案してくれます。

gh copilot suggest "ポート8080を使っているプロセスを調べたい"

実行すると対話形式になります。

? What kind of command can I help you with?
> generic shell command
  gh command
  git command

Suggestion: lsof -i :8080

? What would you like to do?
> Copy command to clipboard
  Explain command
  Revise command
  Rate response
  Exit

コマンドを選択してそのまま実行、クリップボードにコピー、さらに説明を聞くことができます。

コマンドの意味を調べる(explain)

知らないコマンドの意味を調べるときに使います。

gh copilot explain "lsof -i :8080 | grep LISTEN"
Explanation:
  lsof は「List Open Files」の略で、開いているファイルやネットワーク接続を一覧表示するコマンドです。

  -i :8080  ... ポート 8080 を使っている接続のみ表示
  | grep LISTEN  ... 接続待ち受け状態(LISTEN)のものだけに絞り込む

エイリアスを設定する(任意)

~/.zshrc に以下を追加すると短いコマンドで呼び出せます。

alias ghcs='gh copilot suggest'
alias ghce='gh copilot explain'
source ~/.zshrc

ghcs "Dockerコンテナの一覧を表示したい"
ghce "docker ps -a --format 'table {{.Names}}\t{{.Status}}'"

まとめ

機能 使い方 キー / コマンド
コード補完を確定 グレー候補が表示されたら Tab
次の補完候補 複数候補から選ぶ Option+](Mac)/ Alt+]
インラインチャット コードを選択して呼び出す Cmd+I(Mac)/ Ctrl+I
チャットパネル サイドバーから開く サイドバーの Copilot アイコン
コマンドを提案 ターミナルから gh copilot suggest "..."
コマンドを説明 ターミナルから gh copilot explain "..."

GitHub CLI のインストールと使い方は「gh コマンド入門:GitHub CLI で PR・Issue・リポジトリをターミナルから操作する」も参照してください。

git tag の使い方:タグの作成・確認・削除・プッシュまとめ

git tag の使い方:タグの作成・確認・削除・プッシュまとめ

git tag v1.0.0                        # 軽量タグを作成
git tag -a v1.0.0 -m "リリース v1.0.0"  # 注釈付きタグを作成
git push origin v1.0.0               # リモートへプッシュ
git push origin --tags               # すべてのタグをプッシュ

git tag とは

git tag は特定のコミットに名前をつける仕組みです。リリースのバージョン番号(v1.0.0v2.3.1 など)を記録するために使われます。

ブランチと違い、タグはコミットを指したまま動きません。リリース時点のスナップショットとして使うのが一般的です。

タグの種類

種類 作り方 用途
軽量タグ(lightweight) git tag v1.0.0 一時的なラベル・個人メモ
注釈付きタグ(annotated) git tag -a v1.0.0 -m "..." リリース(作成者・日時・メッセージが記録される)

リリース用途では 注釈付きタグ を使うのが慣習です。


タグを作成する

軽量タグ

git tag v1.0.0

現在の HEAD(最新コミット)にタグを付けます。

注釈付きタグ

git tag -a v1.0.0 -m "リリース v1.0.0"

-a でタグ名、-m でメッセージを指定します。作成者名・メールアドレス・日時も自動で記録されます。

過去のコミットにタグを付ける

git log --oneline
# abc1234 third commit
# def5678 second commit
# ghi9012 first commit

git tag v0.9.0 ghi9012

コミットハッシュを末尾に指定します。


タグを確認する

一覧を表示する

git tag
# v0.9.0
# v1.0.0
# v1.1.0

パターンで絞り込む

git tag -l "v1.*"
# v1.0.0
# v1.1.0

タグの詳細を確認する

git show v1.0.0

注釈付きタグの場合は作成者・日時・メッセージも表示されます。

tag v1.0.0
Tagger: Your Name <you@example.com>
Date:   Wed Jul 16 10:00:00 2026 +0900

リリース v1.0.0

commit abc1234...

ログでタグを確認する

git log --oneline --decorate
# abc1234 (HEAD -> main, tag: v1.0.0) third commit
# def5678 second commit
# ghi9012 (tag: v0.9.0) first commit

タグをリモートへプッシュする

git push はデフォルトでタグをプッシュしません。明示的に指定する必要があります。

特定のタグをプッシュする

git push origin v1.0.0

すべてのタグをプッシュする

git push origin --tags

タグを削除する

ローカルのタグを削除する

git tag -d v1.0.0
# Deleted tag 'v1.0.0' (was abc1234)

リモートのタグを削除する

git push origin --delete v1.0.0

ローカルとリモートは独立しています。リモートのタグを削除するときは別途コマンドを実行する必要があります。


タグからブランチを作成する

特定のリリースバージョンにバグ修正を当てたい場合に使います。

git checkout -b hotfix/v1.0.1 v1.0.0

v1.0.0 タグのコミットを起点に新しいブランチを作成します。


まとめ

操作 コマンド
軽量タグを作成 git tag v1.0.0
注釈付きタグを作成 git tag -a v1.0.0 -m "メッセージ"
過去のコミットにタグを付ける git tag v1.0.0 <コミットハッシュ>
タグ一覧を表示 git tag
パターンで絞り込む git tag -l "v1.*"
タグの詳細を表示 git show v1.0.0
リモートへプッシュ(1件) git push origin v1.0.0
リモートへプッシュ(全件) git push origin --tags
ローカルのタグを削除 git tag -d v1.0.0
リモートのタグを削除 git push origin --delete v1.0.0
タグからブランチを作成 git checkout -b <ブランチ名> v1.0.0

git の便利コマンドをまとめた「Git & GitHub Tips集:知っておくと便利なコマンド・設定まとめ」も参照してください。

Apple Container 入門:brew install container から使い方まで

Apple Container 入門:brew install container から使い方まで

brew install container
brew services start container
container system kernel set --recommended
container run --rm hello-world

Apple Container は Apple が開発した macOS 向けのネイティブコンテナランタイムです。brew install container の一行で入り、Docker Desktop や Colima と共存できます。


Apple Container とは

Apple Container は2025年のWWDCで発表された、macOS 向けのコンテナ実行環境です。

従来 macOS でコンテナを動かすには Docker Desktop や Colima(Lima + Docker)のような仲介レイヤーが必要でした。Apple Container は Apple 製の仮想化フレームワーク(Virtualization.framework)を直接使うことで、より軽量にコンテナを起動できます。

Colima / Docker Desktop との共存について

Apple Container は /var/run/docker.sock を使いません。独自の API サーバー(Mach Services)で動くため、Docker Desktop や Colima と同時に起動しても競合しません。


インストール

brew install container

インストール後、バックグラウンドサービスを起動します。

brew services start container

初回のみ、コンテナ実行に必要なカーネルをダウンロードします。

container system kernel set --recommended

数百MB のダウンロードが発生するため、Wi-Fi 環境での実行を推奨します。

バージョン確認で動作を確認します。

container --version
# container CLI version 1.1.0

基本コマンド

イメージを取得する

container image pull alpine:latest

取得済みのイメージを確認します。

container image list
# NAME    TAG     DIGEST
# alpine  latest  28bd5fe8b56d

コンテナを実行する

実行後に自動削除する場合は --rm をつけます。

container run --rm alpine:latest uname -a
# Linux e960ba38 6.18.15 #1 SMP Tue Mar 17 01:36:53 UTC 2026 aarch64 Linux

バックグラウンドで実行する場合は -d をつけます。

container run -d --name my-nginx nginx:alpine

実行中のコンテナを確認する

container list
# ID         IMAGE                  STATE    IP              CPUS  MEMORY
# my-nginx   nginx:alpine           running  192.168.64.5/24  4    1024 MB

ポートマッピング

-p ホスト側ポート:コンテナ側ポート で localhost からアクセスできます。

container run -d -p 8080:80 --name my-nginx nginx:alpine
curl http://localhost:8080
# <!DOCTYPE html>...

ログを確認する

container logs my-nginx

リソース使用量を確認する

container stats --no-stream
# Container ID  Cpu %  Memory Usage
# my-nginx      0.00%  15.68 MiB / 1.00 GiB

コンテナを停止・削除する

container stop my-nginx
container rm my-nginx

ディスク使用量を確認する

container system df
# TYPE    TOTAL  ACTIVE  SIZE     RECLAIMABLE
# Images  3      0       1.51 GB  1.51 GB (100%)

まとめ

コマンド 説明
brew install container インストール
brew services start container バックグラウンドサービス起動
container system kernel set --recommended カーネルを設定(初回のみ)
container image pull <image> イメージを取得
container image list イメージ一覧
container run --rm <image> コンテナを実行(終了後自動削除)
container run -d -p 8080:80 <image> バックグラウンド実行+ポートマッピング
container list 実行中のコンテナ一覧
container logs <name> ログを表示
container stats --no-stream リソース使用量を表示
container stop <name> コンテナを停止
container rm <name> コンテナを削除
container system df ディスク使用量を確認

Docker Desktop / Colima との比較

項目 Apple Container Colima Docker Desktop
提供元 Apple OSS Docker Inc.
CLI コマンド container colima + docker docker
Docker 互換 なし あり あり
docker compose 使えない 使える 使える
仮想化 Apple Virtualization.framework Lima (Apple VZ / QEMU) Apple HV / VZ
ソケット Mach Services(独自 API) ~/.colima/default/docker.sock /var/run/docker.sock
Colima との共存 可能(実機確認済み) 可能
料金 無料 無料 無料(個人)/ 有料(商用)

Apple Container は Docker CLI(docker build / docker compose など)と互換性はないため、既存の Docker ワークフローをそのまま移行することはできません。シンプルなコンテナ実行には向いていますが、Compose を使った開発環境には引き続き Colima や Docker Desktop が適しています。

Colima の使い方は「Colima 入門:Mac で Docker Desktop 不要でコンテナを動かす」を参照してください。

TypeScript 7.0の新機能まとめ:erasableSyntaxOnly・noCheck・ignoreConfigの使い方

TypeScript 7.0の新機能まとめ:erasableSyntaxOnly・noCheck・ignoreConfigの使い方

npm install -D typescript@7
npx tsc --version
# Version 7.0.2

TypeScript 7.0 では --erasableSyntaxOnly--noCheck--ignoreConfig の3つの新しいコンパイラオプションが追加されました。特に --erasableSyntaxOnly は enum や namespace の扱いに影響する重要な変更です。


バージョン確認

npx tsc --version
# Version 7.0.2

npm のタグは以下の通りです。

npm info typescript dist-tags
# rc:     7.0.1-rc
# latest: 7.0.2
# next:   7.1.0-dev.xxxxxxxx

--erasableSyntaxOnly

TypeScript 7.0 の最も重要な変更点です。

背景

Node.js 23.6 以降では TypeScript をそのまま実行できますが、内部では「型注釈だけを消去(erase)」する方式を採用しています。この方式では enumnamespace のように、消去するだけでは済まない構文(コンパイル後に JavaScript コードが生成される構文)は実行できません。

--erasableSyntaxOnly を有効にすると、こうした「消去できない構文」を使った時点でエラーにできます。

対象となる構文

// NG: enum は erasableSyntaxOnly でエラー
enum Direction {
  Up,
  Down,
}

// NG: const enum も同様
const enum Status {
  Active,
  Inactive,
}

// NG: namespace もエラー
namespace Utils {
  export function greet() {}
}
npx tsc sample.ts --noEmit --ignoreConfig --erasableSyntaxOnly
# error TS1294: This syntax is not allowed when 'erasableSyntaxOnly' is enabled.

代替手段

enumas const オブジェクトで代替できます。

// OK: as const で enum を代替
const Direction = {
  Up: "Up",
  Down: "Down",
} as const;
type Direction = (typeof Direction)[keyof typeof Direction];

// OK: const enum の代替(Union型)
type Status = "Active" | "Inactive";

// OK: namespace の代替(モジュール)
// 別ファイルに export するだけで同等の機能が得られる

tsconfig.json に設定する

{
  "compilerOptions": {
    "erasableSyntaxOnly": true
  }
}

--noCheck

型チェックをスキップして JavaScript への変換のみ実行するオプションです。

# 型エラーがあってもコンパイルを通す
npx tsc --noCheck
// 型エラーがあっても --noCheck では通過する
const x: number = "型エラーだが通過";

型チェックは別途 tsc --noEmit で行い、ビルドは --noCheck で高速化するという使い分けができます。

# CI での使い分け例
tsc --noEmit       # 型チェックのみ(時間がかかる)
tsc --noCheck      # JS変換のみ(高速)

--ignoreConfig

tsconfig.json が存在するプロジェクトで個別ファイルを CLI 引数に指定する場合に必要になったオプションです。

TypeScript 6 までの動作

# TypeScript 6 まではこれが通っていた
tsc sample.ts --noEmit

TypeScript 7 からの動作

# TypeScript 7 では TS5112 エラーになる
tsc sample.ts --noEmit
# error TS5112: tsconfig.json is present but will not be loaded if files are specified
#               on commandline. Use '--ignoreConfig' to skip this error.

# --ignoreConfig を付けると明示的に tsconfig を無視して実行できる
tsc sample.ts --noEmit --ignoreConfig

tsconfig.json を使う通常のビルドには影響しません。個別ファイルを CLI で指定するスクリプトや Makefile を使っている場合に対応が必要です。


まとめ

オプション 用途 主なユースケース
--erasableSyntaxOnly enum・namespace を禁止 Node.jsネイティブ実行・型ストリッピングツールとの互換
--noCheck 型チェックをスキップ ビルドの高速化(型チェックは別コマンドで実施)
--ignoreConfig tsconfig.json を明示的に無視 CLI で個別ファイルを指定するスクリプト

TypeScript のバージョン確認コマンドについては「TypeScriptのバージョン確認方法:tsc・npm・package.jsonで調べる」も参照してください。

git log --graph --oneline でブランチをツリー表示する

git log --graph --oneline でブランチをツリー表示する

git log --graph --oneline --decorate --all

これだけでブランチの分岐・マージがアスキーアートのツリーで表示されます。


基本の使い方

# ブランチツリーを表示(全ブランチ対象)
git log --graph --oneline --decorate --all

# 例)出力イメージ
* a1b2c3d (HEAD -> main) fix: ログ出力を修正
*   e4f5g6h Merge branch 'feature/login'
|\
| * h7i8j9k feat: ログイン機能を追加
| * k0l1m2n feat: 認証ミドルウェアを実装
|/
* n3o4p5q chore: 依存関係を更新

--graph でツリー、--oneline で1行表示、--decorate でブランチ名・タグを付与、--all で全ブランチを対象にします。


よく使うオプション

オプション 意味
--graph ブランチの分岐・マージをアスキーアートで表示
--oneline コミットを1行で表示(ハッシュ7桁 + メッセージ)
--decorate ブランチ名・タグ・HEAD を表示
--all 全ブランチ・タグを対象にする(省略するとHEADから辿れる範囲のみ)
-n 20 直近20件に絞る
--date=short 日付を 2026-07-14 形式で表示(--format と組み合わせる)
--author="名前" 特定の作成者のコミットのみ表示

件数を絞って表示する

ブランチが多いリポジトリでは全件表示すると長くなります。-n で件数を絞るのが実用的です。

# 直近20件のツリーを表示
git log --graph --oneline --decorate --all -n 20

日付を入れて表示する

--format オプションでコミットハッシュ・日付・メッセージを組み合わせられます。

git log --graph --format='%C(yellow)%h%C(reset) %C(cyan)%ad%C(reset) %s %C(green)%d%C(reset)' \
  --date=short --all

出力例:

* a1b2c3d 2026-07-14 fix: ログ出力を修正  (HEAD -> main)
*   e4f5g6h 2026-07-13 Merge branch 'feature/login'
|\
| * h7i8j9k 2026-07-12 feat: ログイン機能を追加

エイリアスに登録する

毎回長いオプションを打つのは手間なので、~/.gitconfig にエイリアスとして登録すると便利です。

# エイリアスを追加
git config --global alias.lg "log --graph --oneline --decorate --all"
git config --global alias.lga "log --graph --format='%C(yellow)%h%C(reset) %C(cyan)%ad%C(reset) %s%C(green)%d%C(reset)' --date=short --all"

登録後は短いコマンドで呼び出せます。

# シンプルなツリー
git lg

# 日付付きツリー
git lga

リモートブランチも含めて表示する

--all はローカルブランチ・リモート追跡ブランチ・タグを全て対象にします。git fetch 後に使うと、リモートの最新状態も含めてツリーを確認できます。

git fetch --all
git log --graph --oneline --decorate --all

リモートブランチは origin/main のように remotes/ プレフィックスで表示されます。


まとめ

コマンド 用途
git log --graph --oneline --decorate --all ブランチツリーを全件表示
git log --graph --oneline --decorate --all -n 20 直近20件に絞って表示
git config --global alias.lg "log --graph --oneline --decorate --all" エイリアス登録
git fetch --all && git log --graph --oneline --decorate --all リモート含めて表示

Git コマンドの他のTipsは「Git & GitHub Tips集:知っておくと便利なコマンド・操作まとめ」も参照してください。

ターミナルでGitを視覚的に操作したい場合は「lazygit入門:Gitをターミナルで快適に操作するTUIツール」も便利です。