2

オフィスのモニターを使用して、git リポジトリのすべてのフィーチャー ブランチに関する情報を表示します。この理由の 1 つは、フィーチャー ブランチがいつ「廃止」されるかを知るためです (つまり、すべてのコミットがmasterにマージされます)。を使用しております:

git log --pretty=format:'%cd %s' --no-merges --abbrev-commit -n 1 --date=short master..origin/<branch>

最近、機能をmasterにマージするときにコミットを破棄することで、よりクリーンな履歴を維持しようとしています。欠点は、「廃止された」ブランチを識別する現在の方法が機能しなくなったことです。

ブランチを安全に削除できるかどうかを判断するために使用できる git コマンドはありますか?

4

1 に答える 1

0

以下は、押しつぶされていないブランチにのみ適用されるため、状況に直接適用することはできません。場合によっては、まだ役に立つかもしれません。

まあ、いつでも自分自身を使うことができますgit branch -d

git checkout master
git branch -d <branch>

この-dフラグは、 にマージされていないブランチHEAD(この場合は ) の削除を拒否しmasterます。実際には、既に運用コードベースにあるリポジトリ内の機能ブランチを単純に削除するcleanup-branchesエイリアスに使用しています。

git config --global alias.cleanup-branches \
    '!git branch | grep -v "\*" | awk "{ print $1 }" | xargs git branch -d'

あなたの目的のために、正規のリポジトリでこのコマンドを cron するだけでよいと思います。残ったブランチはアクティブで開発中です。

于 2012-08-29T13:04:51.903 に答える