Git log и git diff¶
Как выбрать подходящую команду для анализа изменений
При работе с Git важно иметь возможность отслеживать изменения в вашем проекте. Для этого существуют различные команды, такие как git log и git diff, каждая из которых предоставляет свой уникальный способ анализа изменений. Давайте разберемся, как выбрать подходящую команду для вашей конкретной задачи
git log¶
Покажет лог изменений (-p патч различия показать) feature ветки до общего предка
git log -p HEAD..feature
Покажет логи общих изменений до общего предка git log -p HEAD...feature
git diff¶
Покажет различия с изменениями с обеих сторон до общего предка(то что во feature будет показано зеленым, то что в HEAD будет красным)
git diff HEAD..feature
Покажет что есть в ветке feature(или удаленной origin/feature), но чего нет в активной HEAD до общего предка
git diff HEAD...feature
git diff HEAD...origin/feature
Отличия здесь log, diff в том что log покажет историю коммитов, в то время как diff различия между последними коммитами двух ветвей.
Таким образом, git log -p HEAD..feature удобна для просмотра истории изменений с коммитами, в то время как git diff HEAD..feature полезна для быстрого просмотра различий между текущим состоянием и состоянием на определенной ветке без привязки к коммитам.
Теперь, когда мы понимаем разницу между этими командами, мы можем выбрать подходящую для нашей конкретной задачи. Если вам нужно изучить историю коммитов на определенной ветке, используйте git log. Если вам нужно быстро оценить различия между текущим состоянием и состоянием на ветке, используйте git diff.