Git svn status - отображение изменений, которые не переданы svn
Я ищу команду в git -svn, которая покажет мне изменения, которые я зафиксировал в моем репозитории git, но еще не внесен в центральный репозиторий svn. Я ищу что-то, что работает как svn status, но я использую git -svn, и, к сожалению, git svn status
не является допустимой командой.
Я пробовал git status
, но он не решает эту проблему, так как он показывает изменения, которые не были зафиксированы в моем локальном репозитории git.
Я также пробовал git svn dcommit --dry-run
, но он не говорит мне, какие файлы готовы к dcommitted - он показывает только URL-адрес репозитория.
Ответы
Ответ 1
Предполагая, что ветвь удаленного репозитория Subversion находится в пультах / git -svn, выполните следующее:
git svn fetch
Извлечение гарантирует, что пульт дистанционного управления / git -svn обновлен. (Спасибо Mark за указание на это в комментарии.)
git diff --name-status remotes/git-svn
Это должно показать вам имя и статус всех файлов, которые были привязаны к git, но не к Subversion, как команда svn status
.
Если вы не знаете, где находится ветка, содержащая удаленный репозиторий Subversion, вы можете запустить:
git branch -a
который должен производить вывод, аналогичный следующему:
* master
remotes/git-svn
Вероятно, вы можете догадаться, что удаленный репозиторий Subversion находится в пультах / git -svn.
Ответ 2
Вы также можете использовать
git diff git-svn HEAD -d
или если у вас установлен diffftool:
git difftool git-svn HEAD -d