bundle_file運用
差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| bundle_file運用 [2023/06/14 06:00] – [shell版] Minoru Kijima | bundle_file運用 [2025/08/30 16:27] (現在) – ↷ 移動操作に合わせてリンクを書き換えました。 Minoru Kijima | ||
|---|---|---|---|
| 行 3: | 行 3: | ||
| BundleファイルはGitコマンドで作成したり読み込みができるのだが、何度も行う作業であればスクリプト化してしまうべきであろう。 | BundleファイルはGitコマンドで作成したり読み込みができるのだが、何度も行う作業であればスクリプト化してしまうべきであろう。 | ||
| これらのバッチ/ | これらのバッチ/ | ||
| - | {{ : | + | {{ wiki: |
| これらのスクリプトでバンドルファイルを読み込むと、importブランチに反映される。確認して問題が無ければmasterブランチにマージする。 | これらのスクリプトでバンドルファイルを読み込むと、importブランチに反映される。確認して問題が無ければmasterブランチにマージする。 | ||
| + | |||
| + | * 2025/06/01 Bundleファイルの対象とするコミットを選択する機能を追加 | ||
| ===== バッチ版 ===== | ===== バッチ版 ===== | ||
| 行 12: | 行 14: | ||
| set ARCHIVE_ZIP=Git-Archive.zip | set ARCHIVE_ZIP=Git-Archive.zip | ||
| set ARCHIVE_TGZ=Git-Archive.tgz | set ARCHIVE_TGZ=Git-Archive.tgz | ||
| + | set REFNAME=refs/ | ||
| + | set COMMIT=HEAD | ||
| :MENU | :MENU | ||
| cd %~dp0 | cd %~dp0 | ||
| 行 19: | 行 23: | ||
| echo 2: Fetch Git bundle file | echo 2: Fetch Git bundle file | ||
| echo 3: Create Git bundle file | echo 3: Create Git bundle file | ||
| + | echo L: List of commits | ||
| + | echo S: Select a commit | ||
| echo T: Create Git tgz-archive file | echo T: Create Git tgz-archive file | ||
| echo Z: Create Git zip-archive file | echo Z: Create Git zip-archive file | ||
| echo q: Quit | echo q: Quit | ||
| - | set /P INPUT=">>> | + | set /P INPUT=" |
| echo. | echo. | ||
| set SELECT=%INPUT: | set SELECT=%INPUT: | ||
| 行 28: | 行 34: | ||
| if " | if " | ||
| if " | if " | ||
| + | if " | ||
| + | if " | ||
| if " | if " | ||
| if " | if " | ||
| 行 42: | 行 50: | ||
| :SELECT_3 | :SELECT_3 | ||
| echo [ Create Git bundle file ] | echo [ Create Git bundle file ] | ||
| - | git bundle create %BUNDLE% HEAD master | + | if " |
| + | | ||
| + | ) else ( | ||
| + | git bundle create %BUNDLE% %REFNAME% ^^%COMMIT% | ||
| + | ) | ||
| + | goto MENU | ||
| + | :SELECT_L | ||
| + | git log --oneline | ||
| + | goto MENU | ||
| + | :SELECT_S | ||
| + | echo [ Select a commit ] | ||
| + | set /P COMMIT=" | ||
| goto MENU | goto MENU | ||
| :SELECT_T | :SELECT_T | ||
| 行 52: | 行 71: | ||
| git archive HEAD --format=zip -o %ARCHIVE_ZIP% | git archive HEAD --format=zip -o %ARCHIVE_ZIP% | ||
| goto MENU | goto MENU | ||
| + | :eof | ||
| </ | </ | ||
| 行 61: | 行 81: | ||
| ARCHIVE_ZIP=Git-Archive.zip | ARCHIVE_ZIP=Git-Archive.zip | ||
| ARCHIVE_TGZ=Git-Archive.tgz | ARCHIVE_TGZ=Git-Archive.tgz | ||
| + | REFNAME=refs/ | ||
| + | COMMIT=HEAD | ||
| # | # | ||
| # Function | # Function | ||
| 行 70: | 行 92: | ||
| 2) Fetch Git bundle file | 2) Fetch Git bundle file | ||
| 3) Create Git bundle file | 3) Create Git bundle file | ||
| + | L) List of commits | ||
| + | S) Select a commit | ||
| T) Create Git tgz-archive file | T) Create Git tgz-archive file | ||
| Z) Create Git zip-archive file | Z) Create Git zip-archive file | ||
| 行 80: | 行 104: | ||
| return | return | ||
| } | } | ||
| - | # Main | ||
| menu_list | menu_list | ||
| - | echo -n ">>> | + | echo -n "${COMMIT}>>> |
| while read input | while read input | ||
| do | do | ||
| 行 92: | 行 115: | ||
| 2) | 2) | ||
| echo "[ Fetch Git bundle file ]" | echo "[ Fetch Git bundle file ]" | ||
| - | git fetch $BUNDLE | + | git fetch $BUNDLE |
| ;; | ;; | ||
| 3) | 3) | ||
| echo "[ Create Git bundle file ]" | echo "[ Create Git bundle file ]" | ||
| - | git bundle create $BUNDLE HEAD master | + | |
| + | then | ||
| + | | ||
| + | else | ||
| + | git bundle create $BUNDLE ${REFNAME} ^${COMMIT} | ||
| + | fi | ||
| ls -ld $BUNDLE | ls -ld $BUNDLE | ||
| + | ;; | ||
| + | S) | ||
| + | echo "[ Select a commit ]" | ||
| + | echo -n " | ||
| + | read COMMIT | ||
| + | test -z " | ||
| + | ;; | ||
| + | L) | ||
| + | echo "[ List of commits ]" | ||
| + | git log --oneline | ||
| ;; | ;; | ||
| T) | T) | ||
| 行 119: | 行 157: | ||
| echo | echo | ||
| menu_list | menu_list | ||
| - | echo -n ">>> | + | echo -n "${COMMIT}>>> |
| done | done | ||
| </ | </ | ||
bundle_file運用.1686722457.txt.gz · 最終更新: by Minoru Kijima
