Nac*_*cht 12 git scripting branch rebase
这很奇怪.我正在尝试制作一个脚本,它将检查每个本地分支并将原始/主控转换为它.
所以这是我的脚本:
for br in `git branch -l`; do
git checkout $br
git rebase origin/master
done
Run Code Online (Sandbox Code Playgroud)
简单.但是在我编写脚本之前,我想确保`git branch -l`返回我认为它正在返回的内容.....它不是.
git branch -l返回正确的结果.但是`git branch -l`实际上是返回所有本地分支PLUS当前目录中的文件!
它返回如下:
[list of local branches minus master] [list of files in the current dir] master
Run Code Online (Sandbox Code Playgroud)
`git branch --list`的行为方式相同.
为什么会这样?
是否有更好的方法将起源/主人变为所有本地分支机构?
ant*_*oft 15
这有点傻.
git branch --list在当前选定的分支前放置一个星号; shell脚本将其解释为通配符,并将当前目录中的文件添加到要与for循环遍历的项列表中.
你可以试试
for br in `git branch -l | tr '*' ' '`; do
git checkout $br
git rebase origin/master
done
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1279 次 |
| 最近记录: |