2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

gitのリポジトリを一括操作する

Last updated at Posted at 2017-03-30

背景

最近のプロジェクト構成だと複数のリポジトリで開発をしていくことが多いですが
開発をするたびに個々のリポジトリを最新化したりブランチ切ったりと結構手間だと
感じ何とか一括操作できないかとbatファイルを作ってみました。

バッチファイル

@echo off
SETLOCAL enabledelayedexpansion

rem カレントディレクトリに移動
cd /d %~dp0

rem 引数からgitコマンドの生成
SET GIT_COMMAND=
for %%f in (%*) do (
  SET GIT_COMMAND=!GIT_COMMAND! %%f
)
echo %GIT_COMMAND%

rem フォルダの一覧を取得
for /D %%A in (*) do (

        IF EXIST %%A\.git\ (
                echo ☆☆コマンド実行リポジトリ %%A

                REM ディレクトリに移動
                cd %%A
                
                REM gitコマンドを実行
                git %GIT_COMMAND%
                
                REM カレントディレクトリに移動
                cd ..\
                
        ) ELSE (
                echo %%A はgitディレクトリではないので作業対象外です。
        )
)

事前準備

  • gitにパスを通しておいてください

使い方

以下のようにファイルを配置します。

./
├common(gitリポジトリ)
├front(gitリポジトリ)
├batch(gitリポジトリ)
└git-all.bat(今回作ったバッチ)

コマンドプロンプトを開いて
git-all fetch -p

成功~

他の人はどうやってんだろ。。。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?