除了 master 之外,我在中央存储库中有一个功能分支的垃圾。我的主人是最新的。现在,我想知道落后于我的主分支的分支列表。我知道 github/bitbucket 中的单个分支选择具有图形视图。但是,在这里我有 50 到 60 个功能分支要比较。领先于师父的少,跟上师父的少,落后于师父的少。如何将分支列表固定到单个文件?
注意:我正在使用 bitbucket
提前谢谢你。
除了 master 之外,我在中央存储库中有一个功能分支的垃圾。我的主人是最新的。现在,我想知道落后于我的主分支的分支列表。我知道 github/bitbucket 中的单个分支选择具有图形视图。但是,在这里我有 50 到 60 个功能分支要比较。领先于师父的少,跟上师父的少,落后于师父的少。如何将分支列表固定到单个文件?
注意:我正在使用 bitbucket
提前谢谢你。
一点点黑客和谷歌搜索(更确切地说是stackoverflowing),瞧!- 一个完全符合您要求的工作 bash 脚本:创建三个具有每个类别分支的文件(在 master 之后、最新或之前)。
注意!有一个拉动,所以把你的改变藏起来。
git checkout master
git branch -r | grep -v '\->' | while read remote; do git branch --track "${remote#origin/}" "$remote"; done #set tracking of all remote branches
git fetch --all # fetch all remote branches to the local repository
git pull --all # update all local branches
for BRANCH in `git branch --list | sed 's/\*//g'`
do
COMMITS_AHEAD_OF_MASTER=`git log master..$BRANCH`
if [ -z "$COMMITS_AHEAD_OF_MASTER" ]
then
COMMITS_BEHIND_MASTER=`git log $BRANCH..master`
if [ -z "$COMMITS_BEHIND_MASTER" ]
then
echo $BRANCH >> up_to_date.txt
else
echo $BRANCH >> behind.txt
fi
else
echo $BRANCH >> ahead.txt
fi
done