私はgitリポジトリをたくさん持っています。ブランチの数が非常に多いので、どのブランチがまだマージされていないかをどのように知ることができますか?私はタコのマージをやり直して、すべての枝を再び取り戻すことはしません。gitはマージされていないブランチを見つける
答えて
はこれを試してみてください:
git branch --merged master
それは、スズ(master
にマージされているリストの枝)に言うことありません。あなたがまたして逆にプルアップすることができます:あなたはたとえば、master
を指定しない場合
git branch --merged
...
git branch --no-merged master
それはあなたが(その現在のHEAD
にマージされている枝が表示されますmaster
の場合は最初のコマンドに相当し、foo
の場合はgit branch --merged foo
と同じです)。ブランチが既にマージされている場合は、再びそれをマージし、
git branch -r --no-merged origin/master
ません。
また-r
フラグと、ローカルまたはリモートの可能チェック対象の参照を、指定することで、上流の枝を比較することができます何でもする。すでにマージされているブランチを「再マージ」することに心配する必要はありません。
あなたの質問に答えるために、あなたは単純にマージされていない枝を見るためにマージされた枝や
git branch --no-merged
を見るために
git branch --merged
を発行することができます。あなたの現在のブランチが暗示されていますが、必要に応じて他のブランチを指定することもできます。
git branch --no-merged integration
は、まだブランチをintegration
ブランチにマージしていないことを示します。
ます。また、マスターにマージされていないリモートブランチを示すために-rパラメータを使用することができます。以下のスクリプトは、現在の枝の先にあるすべてのorigin/*
枝を見つけるでしょう
git branch -r --merged master
git branch -r --no-merged
または '-a'はリモートとローカルの両方を同時に見る –
を
#!/bin/bash
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
echo -e "Current branch: \e[94m$CURRENT_BRANCH\e[0m"
echo ''
git branch -a | grep remotes/origin/ | while read LINE
do
CMD="git diff --shortstat remotes/origin/${CURRENT_BRANCH}...${LINE}"
if $CMD | grep ' file' > /dev/null; then
echo -e "\e[93m$LINE\e[0m" | sed 's/remotes\/origin\///'
$CMD
echo ''
fi
done
- 1. gitのブランチでタグ間のマージを見つける
- 2. Gitのマージ - マージされたブランチはどうなりますか?
- 3. GIT - マージ後にブランチが閉じない
- 4. svnブランチのGITマージでBASEファイルが生成されない
- 5. Gitでは、同じオブジェクトを変更したマージされたブランチを見つける
- 6. マージされていないGitログ
- 7. ブレイクリニアgitは2つのマージされたブランチにコミットします
- 8. ファイルが変更されたgitですべてのマージ/コミットを見つける
- 9. 2つのgitコミットのマージを見つけるには?
- 10. gitを使って2つのブランチをマージするには?
- 11. Gitワークフロー:反復コミットメッセージを避けながらブランチをマージする
- 12. gitのブランチとマージ
- 13. gitで最後にチェックアウトされたブランチを見つける方法
- 14. Git:小さな、しかし非常に古いブランチをマージするには?
- 15. git merge - 異なるポインタで2つのブランチをマージする
- 16. Gitは3つのブランチをマージして元に戻す
- 17. Gitリポジトリ:マージされていないブランチでのすべての変更を削除する方法
- 18. Git:マスターを新しいブランチにマージしてマスターをクリアする
- 19. ブランチのファイルがマージされていない
- 20. Git - マージされたブランチで新しいコミット - これらの新しいコミットをマージする方法?
- 21. チェックアウトされていないブランチに非早送りgitマージを行う方法はありますか?
- 22. GITリポジトリ間のブランチ上のコミットの履歴を見つける
- 23. PERFORCE:指定されたソースを持つブランチを見つける
- 24. 私は自分が所有していない2つのgitブランチをマージする
- 25. マスターで作成されていないブランチをGITのMasterにマージする方法
- 26. git mergeがマージされない
- 27. gitハウスキーピング - マージされたブランチを削除する
- 28. Mongoはブロックされていないユーザーを見つけます。
- 29. ブランチをマージできない
- 30. gitブランチコマンドにmasterブランチがリストされていない
'foo'を' master'にマージすると 'git branch --merged master'リストに表示されます。しかし、もう一度 'foo'にコミットすればどうなりますか?それはもはやそのリストに現れませんか、それとも、新しいコミットがあっても、ある時点で*マスターにマージされていたのでしょうか? –
@CraigOtisそれはもはやリストに現れません。 '--merged'は、指定されたブランチに完全にマージされたブランチのみをリストします。 – Amber
と 'gitk --remotes --not origin/master'は、masterにマージされていない各ブランチのコミットを表示します。 – yoyo