1. ホーム
  2. git

[解決済み] リモートリポジトリでGitブランチを削除した後に、ローカルでGitブランチを削除する

2022-04-22 09:24:45

質問

ローカルとリモートのリポジトリをブランチに関して常に同期させたいのですが、どうすればいいですか?

GitHubでPull Requestをレビューした後、私はそこで自分のブランチをマージして削除しています(リモート)。 ローカルリポジトリでこの情報を取得し、Git にローカルバージョンのブランチも削除させるにはどうしたらいいでしょうか?

解決方法は?

簡単な方法

git branch --merged | grep -v "\*" | xargs -n 1 git branch -d

注意:もしあなたが master ブランチを削除してしまう可能性があります。よりよい方法については、このまま読み進めてください。

マスターを維持する

を確保することができます。 master で削除されることはありませんし、他のブランチも同様です。 grep を追加しています。その場合、次のようになります。

git branch --merged | grep -v "\*" | grep -v "YOUR_BRANCH_TO_KEEP" | xargs -n 1 git branch -d

ということで、もし master , developstaging といった具合に、行っていきます。

git branch --merged | grep -v "\*" | grep -Ev "(\*|master|develop|staging)" | xargs -n 1 git branch -d

エイリアスにする

ちょっと長いので、エイリアスで .zshrc または .bashrc . 私のは gbpurgegit branches purge ):

alias gbpurge='git branch --merged | grep -Ev "(\*|master|develop|staging)" | xargs -n 1 git branch -d'

次に .bashrc または .zshrc :

. ~/.bashrc

または

. ~/.zshrc