Использование Git через командную строку глючит, но bash работает нормально? - PullRequest
2 голосов
/ 23 марта 2012

Мы пытаемся изменить сценарий сборки NANT, чтобы получать изменения из нашего удаленного репозитория Git, а затем публиковать их из локального репозитория на сервере сборки. При тестировании команд, которые мне нужно было выполнить, я обнаружил, что использование Git.exe напрямую связано с ошибками.

Я могу сделать выборку через командную строку Windows, и она корректно обновляет удаленные ветви, чтобы они указывали на более новую ревизию, чем мои локальные ветви. Тем не менее, когда я пытаюсь объединить эти удаленные изменения в локальную ветку, он утверждает, что я внес незафиксированные изменения и не позволю мне объединиться. Если я запускаю «status», он говорит мне, что у меня нет изменений, и он готов к быстрой перемотке вперед и объединению с удаленной веткой.

Если я переключаюсь на обычный Git Bash, он работает нормально. Я могу получать и объединять весь день без каких-либо странных проблем с таинственными незафиксированными изменениями, которые я не вижу.

1 Ответ

1 голос
/ 23 марта 2012

Вам нужно указать рабочее дерево при выполнении слияния:

git --git-dir=c:\code\klas\.git --work-tree=c:\code\klas merge origin/master

Редактировать: Только что заметил, что Чарльз Бейли упомянул об этом в комментарии, и я гарантирую, что я не пытался убить воровать:)

...