.gitignore文件成功忽略所有web.config文件。情况并非总是如此。有一些对web.config文件的遗留历史引用。现在偶尔会将web.config文件还原,而不会发出警告以前的状态。当开发人员进行更改以恢复web.config文件时,没有按预期记录差异。
什么解释了恢复到以前版本的无法解释的行为以及如何停止?我宁愿不改变存储库的整个历史记录,但这是允许的。
- 编辑 - 我找到了部分solution。唯一的问题是它将我的历史记录更改为包含web.config文件,然后删除它们。我现在认为正确的做法是甚至在服务器上覆盖历史记录,方法是从一开始就删除对配置文件的所有引用。
答案 0 :(得分:1)
可能你签出了一个包含该文件的旧提交。在df[order(sapply(df$test, max), decreasing=TRUE), ]
# type value test
# 8 protein 1000.0 20, 1
# 1 rna 1.0 0, 12
# 7 protein 300.0 7
# 6 protein -9.6 6
# 5 dna 30.0 5
# 4 dna 20.0 4
# 3 rna 3.0 3
# 2 rna 2.0 2
期间直接或间接使用git checkout
。
答案 1 :(得分:1)
要从所有提交历史记录中删除web.config
文件,您可以执行以下命令:
touch .gitignore
echo 'web.config' > .gitginore
git rm --cached web.config
git add .gitignore
git commit -m 'add .gitignore to ignore web.config'
git filter-branch --index-filter 'git rm --ignore-unmatch --cached -r web.config' --prune-empty -f -- --all
重写历史可能需要几分钟的时间。之后,{g}提交历史记录中完全删除了web.config
文件。