Я застрял на следующей задаче:Git локальные изменения/сравнения/JGIT
Это то, что я хочу:
- команда мерзавец, что я могу использовать, чтобы показать изменения в «US»
- он должен работать как статус, (показать то, что я сделал) в comparisation к удаленному
это то, что я пробовал:
- git diff [in JGit -> diffentry] со многими вариантами e.G. master..branchName
- Я попытался найти git status cmd, который работает с 2 коммитами.
- Я смотрел через весь diffEntry [JGIT] методы, чтобы найти способ, чтобы получить мой желаемый выход
Я гугле методов JGit, что покажет мне мой желаемый выход
к 1. ->The Проблема:: Когда я меняю файл на удаленном компьютере, команда git diff показывает файл как «M» для изменения, но пользователь его не модифицировал, это может быть правдой, но это не так, но я не ищу
To 2. -> git Status - это то, что я хотел бы использовать, потому что он показывает, что именно я хочу .... но только от индекса к голове ...
Для чего?
Я хочу, чтобы список из всех файлов, которые Пользователь модифицировал/добавил/удалил, чтобы я мог выполнять итерацию по нему и помещать информацию заголовка в каждый файл, непосредственно перед тем, как он нажимает файл.
Ходит рабочий процесс?
Я клонирую ветку, делаю N-коммиты и теперь хочу нажать. Каждый файл в этих N-коммитах должен быть изменен. (и это проблема с этим измененным, если он изменен в удаленной ветке, но не локально, чем я не должен касаться его своим сценарием, но у меня нет возможности разграничить эти два)
€ dit: Дополнительная Информация
git diff-index делает почти то, что я хочу. Проблема: мне нужно отфильтровать только «наши» изменения. Поэтому, если файл изменен на удаленном компьютере, я не хочу его видеть. Я хочу видеть MY измененные файлы.
Побалуйте меня, если хотите. Вы просто ищете способ увидеть различия между локальными изменениями и удаленным? – Hexana
Да, но со следующими ограничениями: git diff показывает файл как Измененный, если он был изменен на удаленной ветке, но я хочу показать пользователю только файлы, которые были изменены/удалены/добавлены, так что это сбивает с толку, если он видит измененный файл, который он не коснулся. – Keey
Я не на 100% понятен в том, что вы просите, но вот несколько советов. git diff origin/master даст вам разницу между вашей локальной ветвью и пультом дистанционного управления. Вы также можете сделать: git fetch origin, если вы знаете, что на пульте есть изменения, и чтобы увидеть различия, которые вы делаете git log -p HEAD..origin. Другая возможность найти отличия - $ git diff -name-status master..branchName (очевидно, меняя названия соответствующих названий ветвей). У меня такое чувство, что последнее может быть тем, что вы ищете? – Hexana