В Xcode я заметил, что .DS_Store и * .xcuserstate всегда меняются и не нуждаются в совершении. Итак, я написал файл .gitignore, который содержит это:Удаление файлов .xcuserstate и DS_Store из git
.DS_Store
*.xcuserstate
среди других записей. Затем я использовал:
git rm --cached *xcuserstate
git rm ---cached .DS_Store
Удалить эти типы файлов уже под управлением версиями. Однако, когда я иду на слияние, Xcode сообщает мне, что есть изменения, которые необходимо выполнить. Эти изменения включают файлы .DS_Store и файлы .xcuserstate.
Итак, я попытался это: How can I Remove .DS_Store files from a Git repository?
find . -name .DS_Store -print0 | xargs -0 git rm --ignore-unmatch
find . -name *.xcuserstate -print0 | xargs -0 git rm --ignore-unmatch
и я получил тот же результат. Как удалить эти файлы из исходного элемента управления навсегда?
Я выполнял изменения с Xcode и вносил изменения в командную строку. По какой-то причине Xcode не выполнял должным образом. После явной фиксации из командной строки он, наконец, работал. Я внес изменения в обе ветви, которые я хочу объединить, но теперь Xcode сообщает мне, что я не могу слиться, потому что «у файла .gitignore был конфликт дерева». –
Снова командная строка работала. Я объединился с помощью командной строки, и все сработало нормально. –