Подтвердить что ты не робот

Как просмотреть diff разветвленного проекта github

Я разветкил проект на github и должен иметь набор изменений, которые я сделал с тех пор, как я разблокировал, в формате diff.

Если вам интересно - я разветкил Apache httpd, и я меняю код в ядре. В настоящее время я не совершаю никаких изменений, запускаю git diff и использую его вывод в качестве патча против ванильных httpd-источников в процессе сборки RPM. Это, конечно, неправильно, но я не знаю, как это сделать правильно. Все, что я знаю, в конце концов мне нужен diff.

4b9b3361

Ответ 1

  • Добавьте исходный репозиторий GitHub (тот, который вы разветкили) как удаленный в своем локальном репо.
    (git remote add mainRepo github_url)
  • git fetch mainRepo, чтобы получить последние изменения от этого оригинального "mainRepo".
  • git log HEAD..mainRepo/master покажет вам все ваши изменения между последней веткой mainRepo и текущей веткой. git diff HEAD..mainRepo/master отобразит его в формате diff.

В learn.GitHub:

git diff mainRepo/master...HEAD

перечислят все ваши изменения, так как вы раздвоены из mainRepo:

Это не будет сравнивать последний "моментальный снимок мастер-сервера" и последний снимок "dev", вместо этого сравним общий предок обоих с "dev. Это скажет вам, что изменилось с точки перехода.

Ответ 2

Если вы нажмете ветку, которая отслеживает репозиторий "вверх по течению" в вашем репозитории, вы также можете увидеть diff в github:

 git remote add mainRepo github_url
 git fetch mainRepo
 git branch main_repo_master mainRepo/master
 git push origin main_repo_master

Затем см. его в Интернете следующим образом:

https://github.com/rdp/mplayer-svn/compare/master... main_repo_master

ref: http://betterlogic.com/roger/2012/04/github-compare-commits

Ответ 3

Получить родительскую/fork-точку sha1: git merge-base master HEAD Получить diff: git diff <sha1>

Или в одной команде: git difftool $(git merge-base master HEAD)

Что такое команда сахара: git diff master...HEAD

Ответ 4

Это старый вопрос, но я нашел очень хороший метод получить патч или файл diff непосредственно из Github.

Когда вы находитесь на своей вилке, есть ссылка "Сравнить" . Используя это, вы попадаете в представление сравнения.

Пример

https://github.com/luisgoncalves/xades4j/compare/master...beat2:master

Теперь вы можете вручную добавить ".diff" или ".patch" в конец этого URL, и вы получите файл непосредственно в своем браузере.

Пример

https://github.com/luisgoncalves/xades4j/compare/master...beat2:master.diff

Источник: https://github.com/blog/967-github-secrets