Git временно добавляет файлы в "commit" при переключении веток - работа с chokidar/node.js
Я создаю наблюдатель файла Node.js (с Chokidar, но он может работать и с Gulp). Каждый раз, когда я сохраняю свой файл, он что-то с ним делает, например, передает JSHint.
Но когда я меняю ветки, мой наблюдатель сходит с ума и применяет мои функции ко ВСЕМ файлам, которые были изменены между ветвями. Итак, я сделал проверку, чтобы проверить, находится ли мой файл в разделе "для фиксации" из Git:
child_process.exec('cd '+ path +' && git status --porcelain', function (error, stdout, stderr) {...
Я делаю "git status" в своем представлении, анализирую строку и проверяю файлы для фиксации. Это работает до сих пор.
НО все же, когда я меняю ветки, Git временно добавляетразличные файлы между ветвями в состояние "быть зафиксированным", в результате чего мой код все еще сходит с ума.
Если я продолжу cmd.exe
в то время как моя другая ветвь загружается и введите git status
на самом деле, он показывает, что тонна файлов меняется, но после завершения работы он возвращается к нормальному состоянию.
Я мог бы проверить, запущен ли процесс "git.exe" в диспетчере задач, но это будет плюс еще одна проверка (и эта занимает больше времени, потому что он перечисляет все процессы списка задач):
child_process.exec('tasklist | find "git"', function (error, stdout, stderr) {...
Вопрос: Как я могу проверить, что файлы Git фиксируются только в моей текущей ветке, даже при переключении веток?
Спасибо!