8

我有一个 App.Local.config 文件,每个开发人员都有自己的设置。我不希望这个文件在 GIT 存储库中检查版本,因为每次它都会被其他开发人员更改覆盖。

所以我从 repo 中删除了文件并将其添加到忽略文件中。但是现在当开发人员切换分支时,App.Local.config 会从他们的本地文件系统中删除。

最终我想要的是:

  1. 新的开发者克隆 repo,获取 App.Local.config 的起始版本
  2. dev 对 App.Local.config 进行更改。Git 将忽略更改而不是暂存/签入
  3. dev 切换分支,对 App.Local.config 的更改不会丢失,文件不会被删除。

我怎样才能做到这一点?

谢谢。

4

3 回答 3

8

可能发生的情况是您从工作区中删除了文件,但没有从索引中删除。如果您这样做了,那么 git 认为删除此文件是一种更改,它将从那时起将其删除。

方法是从索引中删除您不想再跟踪的文件

git rm --cached App.Local.config

然后将该文件添加到.gitignore Doing 中,您将不再对文件有任何问题

于 2013-03-21T17:01:27.420 回答
1

好像这个文件曾经在索引中。所以它的删除一个变化。您可以将其添加到.gitignore.git/info/exclude然后在每台开发人员机器上重新创建它。

于 2013-03-21T16:56:40.120 回答
1

git rm --cached App.Local.config不仅应该在工作分支中使用,还应该在要切换到的分支中使用,App.Local.config否则如果您只在该分支中使用,则在切换回您工作的分支时会丢失git rm --cached App.Local.config

于 2018-01-13T05:56:18.053 回答