Например, я фиксирую некоторые файлы, на следующий день - еще несколько файлов и так далее. Через несколько дней я хочу просмотреть все мои зафиксированные файлы и просмотреть их разницу с помощью удаленного репо. Обратите внимание, что я ничего не толкнул. Я просто хочу убедиться, что если я нажму какую-нибудь вещь, то она перейдет к удаленному репо, как я ожидаю.
Как просмотреть зафиксированные файлы, которые вы еще не отправили?
Ответ 1
Здесь вы найдете свой ответ:
Используя Git, как найти изменения между локальным и удаленным
Для ленивых
- Используйте "git log origin..HEAD"
- Используйте "git fetch", а затем "git log HEAD..origin". Вы можете выбрать отдельные коммиты, используя указанные идентификаторы коммитов.
Вышеприведенное предполагает, конечно, что "origin" - это имя вашей удаленной ветки отслеживания (как, если вы использовали клон с параметрами по умолчанию).
Ответ 2
Предполагая, что вы находитесь на локальной ветке master
, которая отслеживает origin/master
:
git diff --stat origin/master..
Ответ 3
Команда push
имеет параметр -n
/--dry-run
, который будет вычислять то, что нужно нажать, но на самом деле не делать этого. Это работает для вас?
Ответ 4
git diff HEAD origin/master
Где origin
- удаленный репозиторий, а master
- ветка по умолчанию, в которую вы будете нажимать. Кроме того, перед diff
сделайте git fetch
, чтобы вы не отличались от устаревшего оригинала/мастера.
P.S. Я также новичок в git, поэтому, если вышеуказанное неверно, исправьте.
Ответ 5
Я не большой с Git, но это то, что я делаю. Это не обязательно сравнивается с удаленным репо, но вы можете изменить git diff
с соответствующим хешем фиксации с удаленного.
Скажите, что вы сделали одно сообщение, которое вы не нажали...
Сначала найдите последние две коммиты...
git log -2
Показывает последнее завершение и затем отходит...
[jason:~/git/my_project] git log -2
commit ea7937edc8b10
Author: xyz
Date: Wed Jul 27 14:06:41 2016 -0500
Made a change in July
commit 52f9bf7956f0
Author: xyz
Date: Tue Jun 14 14:29:52 2016 -0500
Made a change in June
Теперь просто используйте два хэша commit (который я сокращенно) для запуска diff:
git diff 52f9bf7956f0 ea7937edc8b10