我们在一个团队中工作,我们有本地分支机构,每个人都在自己的分支机构工作,我们提交了很少的分支机构并与--squash 合并。
现在我们必须删除那些合并到'staging'分支中的分支。
问题是当我们命令 'git diff' 查看我们的分支时,它显示所有被压缩的提交都未合并。
我们正在使用以下方法获得未合并的分支:
git branch -a --no-merged staging | grep github | cut -d/ -f3 > /not-gihub.txt
谢谢!
我们在一个团队中工作,我们有本地分支机构,每个人都在自己的分支机构工作,我们提交了很少的分支机构并与--squash 合并。
现在我们必须删除那些合并到'staging'分支中的分支。
问题是当我们命令 'git diff' 查看我们的分支时,它显示所有被压缩的提交都未合并。
我们正在使用以下方法获得未合并的分支:
git branch -a --no-merged staging | grep github | cut -d/ -f3 > /not-gihub.txt
谢谢!
您正在观察的是记录在案的行为:来自man git-merge,
- 壁球
生成工作树和索引状态,就好像发生了真正的合并(合并信息除外),但实际上并不进行提交、移动 HEAD或记录 $GIT_DIR/MERGE_HEAD(以使下一个 git commit 命令创建一个合并提交)。
祖先信息不会记录到 Git 中,因此您必须通过查看代码(可能是手动)来获取分支是否合并的信息。