Это странно. Я пытаюсь создать скрипт, который будет проверять каждую локальную ветку и переустанавливать на нее источник/мастер.
Итак, это мой сценарий:
for br in `git branch -l`; do
git checkout $br
git rebase origin/master
done
Простой. Но прежде чем я сделал сценарий, я хотел убедиться, что `git branch -l` возвращает то, что я думаю, что он возвращает... это не так.
git branch -l
возвращает правильный результат. Но `git branch -l` на самом деле возвращает всю локальную ветвь ПЛЮС файлы в текущем каталоге!
Он возвращает это так:
[list of local branches minus master] [list of files in the current dir] master
`git branch --list` ведет себя так же.
Почему это происходит?
И есть ли лучший способ перебазировать origin/master на все локальные ветки?
git branch --list
: см. stackoverflow.com/a/51431590/6309. - person VonC   schedule 20.07.2018