git add - флаг, чтобы добавить только оба измененных: файлы
Позвольте мне представить сценарий - я работаю над репо, под my_branch
ветви, и мне нужно объединить изменения из other_branch
в мою ветку.
Я запустил команду:git merge origin/feature/other_branch
Вот образец git status
после выполнения этой команды:
$ git status
On branch feature/my_branch
Your branch is up-to-date with 'origin/feature/my_branch'.
You have unmerged paths.
(fix conflicts and run "git commit")
Changes to be committed:
modified: file1
modified: file2
Unmerged paths:
(use "git add <file>..." to mark resolution)
both modified: file3
both modified: file4
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: file5
modified: file6
Untracked files:
(use "git add <file>..." to include in what will be committed)
file7
file8
Как видите, изменения в file1
а также file2
были приняты от other_branch
и были организованы для совершения.
Я столкнулся с конфликтом слияния в file3
а также file4
, который я исправил вручную в моем редакторе.
Я сделал некоторые изменения в file5
а также file6
, но я пока не готов их совершать...
я добавил file7
а также file8
в рабочую область, но я не желаю совершать их тоже.
Чтобы добавить конфликтующие файлы на сцену, мне нужно запустить:
git add file1
git add file2
Есть ли какой-нибудь флаг в git add
, используя который я могу только файлы в both modified
состояние, при этом игнорируя измененные и неотмеченные файлы?
Спасибо
0 ответов
git add
У самого себя нет такого флага.
Но он может принимать в качестве параметров список файлов.
И вы можете перечислить распакованные файлы:
git diff --name-only --diff-filter=U
Итак, что-то вроде этого может работать ( используя это, чтобы привести все файлы в одну строку):
git add $(git diff --name-only --diff-filter=U | xargs)