メインコンテンツまでスキップ

push

Source を git remote にコミットしてプッシュします。

プッシュせずにローカルのチェックポイントだけを作りたい場合は、代わりに commit を使ってください。

skillshare push                  # 自動生成メッセージ
skillshare push -m "Add pdf" # カスタムメッセージ
skillshare push --dry-run # プレビュー

使うタイミング

  • git 経由で Skill の変更を他のマシンと共有する
  • Skill をリモートリポジトリにバックアップする
  • Skill を編集した後、コミットとプッシュを 1 コマンドで行う

まだ共有せずにローカルのチェックポイントだけを保存したい場合は、skillshare commit を使ってください。

実行される処理

オプション

フラグ説明
-m, --message <msg>コミットメッセージ(デフォルト: "Update skills")
--dry-run, -n変更を加えずにプレビュー

Git Root スコープ

pushgit_root 設定フィールド(デフォルト: skills source)で選択されたディレクトリに対して動作します。スコープの一覧は commit — Git Root スコープ を参照してください。git_root が変更されたものの、git リポジトリが別のスコープのディレクトリにまだ存在している場合、push は修正に必要な正確な git init / mv コマンドとともに「Git root mismatch」エラーを表示します。init 後にスコープを変更する も参照してください。

前提条件

Source ディレクトリは remote を持つ git リポジトリである必要があります。

# init 時に設定する(推奨):
skillshare init --remote [email protected]:you/my-skills.git

# または既存のセットアップに remote を追加する:
skillshare init --remote [email protected]:you/my-skills.git

init は最初のコミットを自動的に作成するため、セットアップ直後から push が動作します。

初回プッシュのアップストリームマッピング

初回のプッシュ時(アップストリームの追跡がまだない場合)、skillshare push はアップストリームを自動設定します。

  • remote に既定のブランチ(例えば maintrunk)が既に存在する場合、ローカルの変更はその remote の既定ブランチにプッシュされます。
  • remote が空の場合、現在のローカルブランチにプッシュされます。

これにより、誤って間違った remote ブランチを作成してしまう(例えばリモートは main を使っているのにローカルは master を使っている、など)ことを防ぎます。

# 自動メッセージでのクイックプッシュ
skillshare push

# カスタムコミットメッセージ
skillshare push -m "Add commit-commands skill"

# プッシュされる内容をプレビュー
skillshare push --dry-run

コンフリクトへの対応

remote により新しいコミットがある場合:

$ skillshare push
Push failed
Remote may have newer changes
Run: skillshare pull
Then: skillshare push

解決方法:

skillshare pull    # remote の変更を取得
skillshare push # 自分の変更をプッシュ

ワークフロー

Skill を共有する際の典型的なワークフロー:

# 1. Skill を変更する
# 2. remote にプッシュする
skillshare push -m "Update my-skill"

# 別のマシンで:
skillshare pull # 変更を取得して同期

関連項目

  • commit — プッシュせずにローカルでコミット
  • pull — remote からプル
  • sync — ローカルの Target へ同期
  • Cross-Machine Sync — 完全なセットアップ手順