Я использую Мерзавца на Ubuntu 10.04 (Ясный Lynx).
Я сделал, некоторые соглашаются на мое ведущее устройство.
Однако я хочу получить различие между этими фиксациями. Все они находятся на моем основном ответвлении.
Например:
commit dj374
made changes
commit y4746
made changes
commit k73ud
made changes
Я хочу получить различие между k73ud и dj374. Однако, когда я сделал следующий, я не мог видеть изменения, в которых я внес k73ud
.
git diff k73ud..dj374 > master.patch
Попробуйте
git diff k73ud^..dj374
убедиться, что вы включили все изменения k73ud
в результирующую разницу.
git diff
сравнивает две конечные точки ( вместо диапазона фиксации ).
Поскольку OP хочет увидеть изменения, внесенные k73ud
, ему / ей необходимо различать первый родительский коммит k73ud
: k73ud ^
( или k73ud ^ 1
или k73ud ~
).
Таким образом, результаты diff
будут включать изменения с родительского k73ud
(то есть включая изменения из самого k73ud
) вместо внесенных изменений начиная с k73ud
(до dj374
).
Также вы можете попробовать:
git diff oldCommit..newCommit
git diff k73ud..dj374
и (1 пробел, не более):
git diff oldCommit newCommit
git diff k73ud dj374
И если вам нужно получить только имена файлов (например, чтобы скопировать исправления вручную):
git diff k73ud dj374 --name-only
И вы можете применить изменения в другое отделение:
git diff k73ud dj374 > my.patch
git apply my.patch
Если вы хотите увидеть изменения, вносимые при каждой фиксации, попробуйте «git log -p»