Я думаю, что вы перепутали git diff
и git show
здесь.
Вы не сделали коммит и не вносили никаких изменений еще
Использование git checkout your-file
Вы еще не сделали коммит, но уже поставили изменения
Используйте git reset HEAD your-file
Вы уже сделал коммит
Убедитесь, что у вас нет ожидающих изменений (ставьте sh их или отмените их), скопируйте ваш коммит ha sh (см. COMMIT_HA SH) затем:
git reset HEAD~1
git checkout your-file
git add your-other-file ...
git commit -c COMMIT_HASH
Примечание: это предполагает, что коммит является вершиной вашей ветви
Если ваш коммит не является вершиной вашей ветви, я бы рекомендовал ознакомиться с интерактивным Перебазируйте, если и только если вы не касаетесь ветки publi c. т.е. не переписывать публикуемую c историю.