Ответ 1
Внутри git blame
используется git rev-list
для создания списка ревизий. И git rev-list
принимает параметр --no-merges
.
Таким образом, вы можете:
git blame --no-merges <file>
Слияние GIT вводит новую фиксацию. Это вызывает проблемы с "git-виной": объединенные строки, по-видимому, совершены разработчиком, который сделал слияние.
Я могу понять, что это имеет место для противоречивых изменений (потому что он решил конфликты). Но есть ли способ, чтобы это не происходило для бесконфликтных линий? Какой-то вариант для "git wame"?
Если нет пути, это в основном сделает "git-вину" почти бесполезным, когда у вас много слияний, и GIT поощряет много слияний.
У SVN есть эта проблема с неконфликтными слияниями? Я так не думаю, но, возможно, я ошибаюсь, поскольку я (понимающе) избегал таких ветвей, как чума, когда работал с SVN.
Внутри git blame
используется git rev-list
для создания списка ревизий. И git rev-list
принимает параметр --no-merges
.
Таким образом, вы можете:
git blame --no-merges <file>
Я просто попробовал слияние с git версии 2.3.8, а конфликтующие строки без объединения не были приписаны автору слияния, они приписываются оригинальному автору. Возможно, это было рассмотрено с вашей версии git.