.файл gitignore, где я должен поместить его в свой проект xcode?



Я хочу, чтобы git игнорировал мой UserInterfaceState.xcuserstate файл в моем проекте XCode4, но где я должен поставить ? это внутри ? или нет? Элемент .git в одной папке с ProjectName.xcodeproj file

693   6  

6 ответов:

вы можете .gitignore в каждом отдельном каталоге вашего проекта.

однако, лучшая практика состоит в том, чтобы иметь один единственный .gitignore файл в корневом каталоге проекта и поместите в него все файлы, которые вы хотите игнорировать, например:

ignoredFile.whatever
ignoredDirectory/*
directory/ignoredFileInsideDirectory
.svn

при создании .gitignore file, игнорируемые файлы, которые имеют изменения или являются новыми в репозитории, не будут отображаться как ожидающие фиксации.

вы также можете иметь один глобальный локальный файл git ignore, который будет управлять всеми вашими репозиториями git.

git config --global core.excludesfile ~/.gitignore_global

эта альтернатива особенно интересна для игнорируемых файлов, которые не связаны с проектом, таких как файлы, связанные с IDE и так далее.

существуют подходы к игнорированию файлов в git:

  1. Global git ignore: - при таком подходе ваши пользовательские правила будут применяться к каждому каталогу git на вашем компьютере. Обычно этот файл может быть создан под ~/.gitignore_global путь. этот подход хорош, если вы хотите исключить некоторые типы файлов, которые генерируются ОС или любым другим журналированием, обналичиванием и т. д. инструменты.
  2. Per-repository git ignore: - в этом подход к вашим пользовательским правилам будет применен к определенному каталогу git на вашем компьютере. Локальные правила для каждого репозитория могут быть добавлены в .git/info/exclude файл в вашем репозитории. Правила, указанные в этом файле не будет совершено, что означает, что он не будет делиться с другими. как правило, этот подход полезен для предотвращения фиксации локально сгенерированных файлов. Например, для файлов, созданных вашим редактором.
  3. за путь git игнорировать: - в этом случае ваш пользовательские правила будут применяться к конкретным репозиториями git суб путь. Вы можете создать .gitignore в путь вашего конкретного репозитория. этот подход обычно используется для игнорирования некоторых типов файлов только в определенной папке конкретного репозитория. Хотя эти файлы могут быть добавлены в управление версиями по другим путям и другим репозиториям.

Итак, я предлагаю вам, если вы хотите игнорировать ваш конкретный файл (UserInterfaceState.xcuserstate) во всех ваших репозиториев лучшие подход заключается в использовании глобального подхода git ignore. Однако если ваш файл создается только в определенном репозитории, вы можете использовать подход git ignore для каждого репозитория.

для получения дополнительной информации вы можете прочитать этой отличный пост в блоге. И там на языке конкретных git игнорировать правила могут быть основаны здесь. И вы можете автоматически генерировать общие правила git ignore для конкретного языка, инструмента или ОС с помощью этом сайте.

вы должны поставить .gitignore файл в корневой каталог проекта.

куда я должен поставить ? это внутри .папка git?

нет .gitignore внутри .git папка.
Однако это .git/info/exclude файл, который позволяет исключить файл локально, как правило, когда вы хотите исключить файл только для этой конкретной РЕПО (с псевдоним, как этот):

git config alias.exclude "!sh -c 'echo \"\" >> .git/info/exclude' -"
git exclude UserInterfaceState.xcuserstate

Если вам нужно исключить этот файл для все подобный проект, как Эльнур Абдуррахимов упомянутые в ответ, исключить его глобально.

echo UserInterfaceState.xcuserstate >> ~/.gitignore

но, как уже упоминалось в "нам нужно зарегистрироваться *.xcuserstate все?", если это тип файла, который должен быть проигнорирован любым пользователем РЕПО, я бы на самом деле версия .gitignore в верхней части репо, с содержанием, похожим на:

*.xcuserstate 

таким образом, любой пользователь этого РЕПО даже не поймет, что этот файл существует и генерируется (независимо от его имени): он не будет отображаться в git status никогда.

или игнорировать xcuserdata/ полностью (либо в глобальном .gitignore, или в версии один, как generic GitHub Objective-C.gitignore

вы должны не поместите файлы для конкретных инструментов в проект .gitignore file-если только этот инструмент не требуется для использования каждым разработчиком проекта.

вместо этого создайте свой личный глобальный .gitignore файл в вашем домашнем каталоге и активировать его:

git config --global core.excludesfile ~/.gitignore

теперь вы можете поместить любые файлы, созданные вашими инструментами разработки в ваш .

как правило, его рекомендуется включать .gitignore файл в корневом каталоге проекта

Comments

    Ничего не найдено.