首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >把修改过的文件藏起来?

把修改过的文件藏起来?
EN

Stack Overflow用户
提问于 2018-03-05 21:40:43
回答 2查看 2.2K关注 0票数 8

当我试图隐藏改变时,我会有一些奇怪的行为。我不是口交专家,所以我希望有人能对此有所了解:

  1. 在最新的分支上,我修改了一个跟踪文件。git状态显示为修改后的
  2. git存储(响应使用“保存的工作目录和索引状态WIP on.”)
  3. git状态仍然显示文件已修改,但git (和gui)没有显示任何更改。
  4. git存储列表显示已创建了存储项。
  5. git存储弹出响应"error:您对以下文件的本地更改将被合并覆盖:“

3点的行为对我来说毫无意义。这种情况最近才开始发生。几个月来,我一直在使用藏/藏流行音乐,没有任何问题。

我想知道我的本地工作副本是否有问题,所以我重新克隆,但得到了同样的行为。

我的盖特装置坏了,还是我漏掉了什么?

更多信息:

  • 在另一台PC上尝试了这一点,它的行为就像预期的那样,所以它与这个安装有关。
  • 尝试创建一个新的本地回购,添加和提交1个文件,修改,存储。同行为
  • 尝试与文件与CR,LF和LF线结束。同行为

git配置-l:

代码语言:javascript
复制
core.symlinks=true
core.autocrlf=true
core.fscache=true
color.diff=auto
color.status=auto
color.branch=auto
color.interactive=true
help.format=html
diff.astextplain.textconv=astextplain
rebase.autosquash=true
http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
http.sslbackend=openssl
diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
credential.helper=manager
core.editor='C:\Program Files (x86)\Notepad++\notepad++.exe' -multiInst -    notabbar -nosession -noPlugin
core.excludesfile=C:\GIT\gitignore\VisualStudio.gitignore
core.editor=notepad
core.fscache=true
core.preloadindex=true
gui.fontdiff=-family Consolas -size 10 -weight normal -slant roman -    underline 0 -overstrike 0
gui.recentrepo=C:/GIT/polarisv4
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
user.name=xxxxx
user.email=xxxxxx
difftool.sourcetree.cmd='C:/Program     Files/TortoiseGit/bin/TortoiseGitMerge.exe' "$LOCAL" "$REMOTE"
mergetool.sourcetree.cmd='C:/Program     Files/TortoiseGit/bin/TortoiseGitMerge.exe'  -base:"$BASE" -mine:"$LOCAL" -    theirs:"$REMOTE" -merged:"$MERGED"
mergetool.sourcetree.trustexitcode=true
alias.co=checkout
alias.br=branch
alias.st=status
winupdater.recentlyseenversion=2.15.1.windows.2
credential.helper=manager
core.repositoryformatversion=0
core.filemode=false
core.bare=false
core.logallrefupdates=true
core.ignorecase=true
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-06 21:09:30

正如DaveW所说,问题来自于core.fscache=true设置。这是一个仅用于Windows的设置,可以启用文件系统缓存,以减轻某些Windows文件系统操作的缓慢性。以下是从提交消息Win32:在mingw和dirent实现下面添加一个缓存中提取的描述

在Windows上检查工作树状态非常慢,这是由于lstat仿真速度慢(git为索引中的每个文件调用lstat一次)。Windows操作系统API在扫描整个目录的状态方面似乎比检查单个文件要好得多。 为lstat数据添加一个使用缓存的lstat实现。缓存没有读取整个父目录并将其添加到缓存中。对同一个目录的后续lstat调用直接从缓存中处理。 还可以实现opendir / readdir / closedir,以便在缓存中创建和使用目录列表。 缓存不跟踪文件系统更改,也不插入任何修改文件API,因此必须显式启用不修改工作副本的git函数。

此提交消息的最后一句给出了OP问题的原因。

票数 3
EN

Stack Overflow用户

发布于 2018-03-06 14:08:11

在Ortomala Lokni的建议下,我删除了所有全局git配置文件1

问题解决了。我恢复每个文件,直到问题回来,然后摆弄似乎是合理的候选人设置。

罪魁祸首是fscache -设置真导致了问题。我不知道为什么相同的设置在其他个人电脑上工作良好。

谢谢大家的帮助!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49119934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档