Как мне отличить одну ветвь от моей ветви по умолчанию
я переключился на ветку в своем локальном РЕПО и заметил, что она дала мне сообщение, показывающее обновленные файлы X. Это удивило меня, так как я не знал, что на этой ветке есть какие-то различия. Как сравнить эту ветку с веткой по умолчанию, чтобы увидеть, что изменилось?
3 ответа:
использовать
hg diff -r BRANCH1:BRANCH2
, где BRANCH1 и BRANCH2-это имена ветвей. Это покажет вам различия между главами двух ветвей.вы получили сообщение о "X files updated", потому что были изменены файлы в исходной ветке, а не обязательно потому, что были изменены файлы в другой ветке. Mercurial показывает объединение наборов измененных файлов из обеих ветвей.
чтобы просто перечислить файлы с различиями, добавьте параметр --stat:
hg diff --stat -r BRANCH1:BRANCH2
это дает выход такой:
mypath/file1.cpp | 1 - mypath/file2.cpp | 143 ++++++++++ mypath/file3.cpp | 18 +- 3 files changed, 160 insertions(+), 2 deletions(-)
или чтобы немного очистить выход, пропустите его через sed, чтобы удалить все после символов трубы:
hg diff --stat -r BRANCH1:BRANCH2 | sed "s/|.*$//g"
это дает вам только список измененных файлов и сводную строку в конце:
mypath/file1.cpp mypath/file2.cpp mypath/file3.cpp 3 files changed, 160 insertions(+), 2 deletions(-)