除了master之外,我在中央存储库中有一个功能分支的垃圾。我的主人是最新的。现在,我想知道滞后于我的主分支的分支列表。我知道github / bitbucket中的各个分支选择有一个图形视图。但是,这里我有50到60个功能分支进行比较。他们中很少有人领先于大师,很少有人掌握大师,很少有人掌握大师。如何将braches列表固定到单个文件中?
注意:我使用的是bitbucket
提前谢谢你。
答案 0 :(得分:1)
一点点黑客和谷歌搜索(堆栈溢出,而不是)和vo! - 一个工作的bash脚本,可以完全按照您的需要执行操作:创建三个文件,每个文件包含每个类别的分支(后面,最新或超前)。
NB!有一个拉动,所以隐藏你的变化。
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
答案 1 :(得分:0)