リポジトリには、すべてのユーザーが機能に基づいて貢献する構成ファイルがあります。私のローカル テストでは、その構成ファイル内の 2 つの値を手動で変更する必要がありますが、変更をサーバーにコミットすることは絶対にしたくありません。
ただし、ローカルの変更が上書きされることを意味する場合でも、リポジトリに新しいバージョンがある場合は、ファイルに更新をプルしたいと考えています。大丈夫です。まさにそれを行うために特別に作成した隠し場所からそれらを再度作成できます。
私が疑問に思っているのは、Git に「ねえ...ローカルの変更をサーバーにプッシュバックすることは決してないので、変更されたものとして表示しないでください。ただし、新しい変更がある場合は、私が引っ張るとそれら!
これが私が求めているものの例です。
Server: VersionA
Local: [Nothing]
(I do a Git Pull)
Server: VersionA
Local: VersionA
(I make local changes)
Server: VersionA
Local: VersionA (Modified)
(What I want...)
Server: VersionA
Local: VersionA (Modified, but ignored locally by Git)
(Someone checks in an update to the file)
Server: VersionB
Local: VersionA (Modified, but local changes ignored by Git)
(I do a git Pull)
Server: VersionB
Local: VersionB (This overwrites my local, modified VersionA)
(I then manually update VersionB with my stashed changes)
Server: VersionB
Local: VersionB (modified, but local changes ignored by Git)
.gitignore
新しいファイルが追加されなくなるため、ここではファイルは適用されませんが、このファイルは既に追加されています。あたかもそこにないかのように、ローカルの変更を常に無視したいだけです。サーバー上でファイルが変更されたかどうかだけを気にします。
では、これを行うように Git を構成できますか?