Я использую Eclipse Indigo SR2 с (встроенным) плагином EGit v.1.3.0.201202151440-r и не смог найти способ легко просмотреть все мои изменения до совершения фиксации.
Я использовал Eclipse с SVN в течение многих лет, и это всегда было очень легко сделать. Я бы обычно щелкнул правой кнопкой мыши по моему проекту, выберите Team->Synchronize
, дважды щелкните по первому измененному файлу (в перспективе Team Sync), затем несколько раз нажмите Ctrl - ., чтобы просмотреть все изменения в одном файле и затем перейдите к следующему файлу, так как я написал сводку моих изменений для сообщения о фиксации.
Но, конечно, git сильно отличается от Subversion, поэтому мой рабочий процесс должен измениться. С помощью EGit "Team Sync" представляется полезным только для просмотра изменений между моими локальными файлами и удаленным репозиторием (т.е. Перед нажатием на пульт). Мне нужен способ просмотреть изменения с момента моего последнего фиксации в моем локальном репозитории. Обычно я даже не забочусь о пересмотре изменений перед нажатием на удаленный (и если бы я это сделал, я бы предпочел простой эквивалент git log
, чтобы увидеть, какие коммиты я собираюсь нажать).
Если я щелкнул правой кнопкой мыши по моему проекту и выбрал Team->Commit
, мне представлено окно, в котором выполняется почти все, что мне нужно сделать (выберите файлы для этапа, фиксации, записи сообщения фиксации, изменения предыдущего фиксации и т.д..). То, что это не позволяет мне, это быстро и легко просмотреть все мои изменения в редакторе сравнения. Я не могу поверить, что этой возможности не существует! Кажется, мне нужно дважды щелкнуть по каждому отдельному файлу, просмотреть изменения, закрыть редактор сравнения и дважды щелкнуть по следующему файлу. Это смешно!
TL/DR - Я ищу простой эквивалент GUI (в Eclipse), чтобы сделать то, что я легко могу сделать из командной строки, используя git vimdiff
(где vimdiff - это псевдоним git, который использует vimdiff как "difftool" для циклического переключения всех модифицированных файлов), а затем git commit
(возможно, git add
или два между ними).
Если у кого-то нет хорошего решения, мне интересно, как другие обрабатывают свой рабочий процесс commit с помощью EGit. Я отлично ладил с командной строки (не то, что Eclipse доволен этим), но я не могу поверить, что EGit почти бесполезен, как мне кажется. Возможно, мой google-fu не так силен, как когда-то был?