【发布时间】:2018-01-23 17:30:50
【问题描述】:
我正在使用 TFS 在 Visual Studios 中工作,我有 3 个分支。在我们的仓库中,每个分支都有 2 个带有配置文件的解决方案。这些配置文件已提交并需要保持提交。但是,在我的机器上,我需要更改配置文件以指向正确的数据库。
我尝试过git update-index --skip-worktree App.config,但是当我去切换分支时,我收到以下错误消息:
还有
git rm --cached App.config
它会创建 .gitignore 文件,并在提交该文件时从我不想要的 repo 中删除 App.config。
我的目标是忽略我对文件所做的更改,但将文件保留在在线 git 存储库中。
【问题讨论】:
-
在本地机器上签出了哪个分支?你用的是什么视觉工作室?另外,你使用像 GitExtensions 这样的 GUI 吗?
-
他们都已签出。 VS 2017 允许我通过下拉菜单在它们之间切换,它会自动更新我本地机器上的文件。我有 TortoiseGit 作为 GUI,但我现在只使用 VS
-
太棒了。因此,作为澄清,您从下拉列表中选择的文件是唯一已签出的文件,其余文件存在于本地,但尚未签出。您对这些分支中的任何一个所做的任何更改都不会自动推送到网上。
-
下拉菜单用于切换分支,与单个文件无关。所有文件都存在于 repo 中并且已被签出,因此我对本地文件所做的任何更改都将与 repo 不同,因此 Visual Studio 希望我暂存它们。所以我不能更改分支,并且执行上述任一命令都会产生相同的错误。
-
我认为您很困惑,该下拉列表是实际检查磁盘上不同分支之一的实际内容,一次只检查一个。参考这个link
标签: git visual-studio tfs