私のGitリポジトリには、メインの共有リポジトリとは異なる構成ファイルがあり(追跡し続ける必要があります)、変更が他の開発者に反映されないようにします。ただし、「-assume-unchanged」は、コードを他のリポジトリにプッシュしている間、変更をローカルに保持するのに適しています。問題は、最新のコードを取得する必要があり、共有リポジトリからローカルにプルまたはマージしているときに、エラーが発生することです。
error: Your local changes to the following files would be overwritten by merge:
app/grails-app/conf/BuildConfig.groovy
Please, commit your changes or stash them before you can merge.
Aborting
マージ元の共有リポジトリにある構成ファイルとは異なる構成ファイルがあるため、エラーは理にかなっています。しかし、この構成を変えたまま、プル(マージ)最新コードを取得するにはどうすればよいですか?回避策を避けたい:
git update-index --no-assume-unchanged app/grails-app/conf/BuildConfig.groovy
git stash save "config file"
次に、マージ後、変更した構成を元に戻します。
git stash apply
スタッシングとインデックス作成のこれらの余分な手順を回避する方法-変更されていないと仮定しますか?1つのファイル以外のすべてをプルする方法はありますか?説明されている問題に対する他の解決策はありますか?
ありがとうございました