Чем отличается команда Revert от всплывающего меню, git-меню и Показать историю в Android Studio 3.3? - PullRequest
0 голосов
/ 01 марта 2019

Я использую Github в своем проекте в Android Studio 3.3.

Я нахожу дисплей команды Revert в трех положениях, см. Изображения 1, изображение 2, изображение 3-1 и изображение 3-2 (изображение3-2 является подробным окном изображения 3-1, а команда Revert находится в левой средней части изображения 3-2).

Чем отличаются три команды возврата?

Изображение 1 enter image description here

Изображение 2 enter image description here

Изображение 3-1 enter image description here

Изображение 3-2 enter image description here

Ответы [ 2 ]

0 голосов
/ 05 марта 2019

TLDR:

Изображение 1, Version Control -> Log -> Revert, редактирует репозиторий, который делает его похожим на время до того, как был сделан этот коммит, и дополнительно делает коммит.
Изображение 2, VCS -> Git -> Revert..., удаляет незафиксированные изменения для выбранных файлов.
Изображение 3, Local History -> Show History, действует как 1, но внутри инструментаэто специфично для JetBrains, ничто не связано с Git.


Подробности:

  1. Version Control -> Log -> Revert на самом деле делает это ниже: A revert, then add and commit

    • (reset at: 29 просто хочет восстановить репозиторий Git для тестирования.)
    • Сначала выполните git revert, сделав несколькоредактировать вне контроля Git, и хранилище становится грязным (требуется фиксация).
    • Затем, всплывающее окно фиксации, запрашивающее вас фиксации.
    • Во-вторых, после того, как вы решили, чтофайл для фиксации, сделайте git add и git commit.
    • Вывод: Version Control -> Log -> Revert = git revert (+ git add + git commit, необязательно) = Редактировать репозиторий как раньшеон фиксирует, что он возвращается к.
  2. VCS -> Git -> Revert... активируется только тогда, когда хранилище загрязнено. Этофактически делает это ниже: A rm, then checkout

    • Сначала он делает git rm --cached -f
    • Затем он делает git checkout HEAD
    • Вывод: VCS-> Git -> Revert... = git rm + git checkout = Отменить любые незафиксированные изменения.
  3. Local History -> Show History является автономной встроенной VCS, управляемой IntelliJ IDEA (и другой JetBrains IDE, включая Android Studio, которая исправлена ​​из сообщества IntelliJ IDEA), она не имеет отношения к этому Git или другому типу VCS и будет очищенаесли вы делаете File -> Invalidate Caches / Restart -> Invalidate.То, что Revert действует как Version Control -> Log -> Revert, оба восстанавливают источник в историю.

0 голосов
/ 03 марта 2019

VCS -> Git -> Revert... не отменит коммит, только отменит локальные поэтапные изменения.
Это эквивалент git reset HEAD, нестабильных изменений, добавленных в индекс .

Отмена, показанная в Log, фактически git revert будет коммитом, то есть: создайте новый коммит, который отменит изменения, внесенные отмененным коммитом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...