У меня есть фиксированный файл "build.properties", этот файл должен быть в нашем репозитории проекта , поскольку он содержит важную информацию о сборке.
Иногда какой-то разработчик выполняет локальное тестированиеизмените содержимое этого файла, а затем они по ошибке фиксируют изменения (просто ставят все внесенные изменения, включая build.properties).
Теперь я хотел бы как-нибудь, чтобы игнорировать все локальные изменения, внесенные в этот файл, чтобы избежать этой ситуации, которая продолжает тормозить сборку, например, когда разработчик запустит * git add ** или git commit -a ,этот файл не будет включен в промежуточный файл.
Я уже провел некоторое исследование, но до сих пор не могу найти какое-либо решение, совместимое с тем, что я ищу, учитывая, что операцию нужно применять удаленно.Например, я могу использовать папку .git / info / exclude , но тогда каждый раз, когда новый разработчик будет клонировать репозиторий, он должен будет установить .git / info / exclude еще раз, и я бы хотел этого избежать.
Более того, .gitignore работает только с неотслеживаемым файлом, если я добавлю отслеживаемый файл в .gitignore, он вообще не будет игнорироваться.Я обнаружил, что некоторые люди предлагают использовать .gitignore в сочетании с git rm --cached, а затем повторно добавляют файлы, но как только файл повторно добавляется в дерево, изменения продолжают отслеживаться, также читая из официального документа GIT,.gitignore не подходит для моих нужд.
Есть решение?Спасибо!
ОБНОВЛЕНИЕ
Я большой поклонник SVN, и чем больше я знаю GIT, тем больше я ценю SubVersion.
Так что я думаюответ на мой вопрос: GIT не предоставляет никакого способа для достижения чего-то подобного ...
Согласитесь, что это не будет лучшим из методов, и что есть другие способы достичь того, что я спрашиваюбез управления с помощью известного инструмента управления исходным кодом GIT, но мое намерение все еще довольно распространенное, с которым мы можем столкнуться во многих различных контекстах.
Я имею в виду, что GIT предоставляет способы обойти большинство стандартных практик и принципов,например, я не могу изменить удаленную историю в принципе, но GIT дал мне --force для достижения этой цели, поэтому я удивляюсь, почему она также не предоставляет простой способ обойти мою проблему.