気になったことがあったら、すぐに天秤AIの三銃士(GPT-4o、Gemini、Claude)にまとめて聞いているけど、履歴をちゃんと管理しておきたいのでGit管理することにしました。
できるだけ簡単にしたいので、履歴をダウンロードしたらファイルの右クリックでpushできるように右クリックメニューをカスタマイズ。
やり方は天秤AIに聞いたらGPT-4oが良い回答だったのでこちらを採用。以下抜粋。
コマンドプロンプトから実行できるようにする方法を解説します。バッチファイルでは、基本的に同様の手順を踏むことができますが、Windowsのcmd命令を用いて記述します。
以下は、上記のPowerShellスクリプトをバッチファイルに変換した例です:
バッチファイルの例 (upload_to_github.bat
):
@echo off
setlocal
rem 引数として渡されたファイルのパスを取得
set "filePath=%~1"
rem ローカルGitリポジトリのディレクトリ
set "localRepoPath=C:\path\to\your\local\repository"
set "copyDestinationPath=%localRepoPath%\%~nx1"
rem リポジトリディレクトリに移動
cd /d "%localRepoPath%" || exit /b
rem 最新の状態を取得
git pull origin main || exit /b
rem ファイルをコピー
copy /Y "%filePath%" "%copyDestinationPath%" || exit /b
rem 変更をステージング
git add "%copyDestinationPath%" || exit /b
rem コミット(コミットメッセージを適宜変更)
set "commitMessage=Added file: %~nx1"
git commit -m "%commitMessage%" || exit /b
rem リモートにプッシュ
git push origin main || exit /b
echo ファイルはリモートリポジトリに正常にプッシュされました。
endlocal
使い方
-
バッチファイルの作成
- 上記のスクリプトをコピーして、
upload_to_github.bat
という名前で保存します。ファイルパスを変更する際には「バッチファイル」と「.bat」の2種類の拡張子があるので、間違えないように注意してください。
- 上記のスクリプトをコピーして、
-
SendTo
フォルダに配置-
upload_to_github.bat
をC:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\SendTo
に配置します。これで、ファイルを右クリックし「送る」メニューからこのバッチを選択できるようになります。
-
-
localRepoPath
の修正-
localRepoPath
を実際のローカルリポジトリのパスに置き換えてください。
-
-
ブランチ名の確認
- スクリプトではGitのデフォルトブランチを
main
としています。異なる場合は適宜変更してください。
- スクリプトではGitのデフォルトブランチを
-
認証情報
- GitHubにプッシュするための認証情報がコマンドプロンプトからアクセスできるように設定されていることを確認してください(SSHキーやGit Credential Managerなどを使用)。
- バッチファイルを利用することで、より簡単にファイルをリモートリポジトリにプッシュできるようになります。各ステップでエラーが発生した場合は、コード内の
exit /b
がエラーハンドリングを行い、処理を中断します。必要があれば、追加のエラーハンドリングやログを追加してデバッグしやすくすることができます。
ダウンロードフォルダからファイルを選択して右クリックの「送る」から作成したバッチのショートカットを選択するとコミットできます。