gpt4 book ai didi

git status 显示两个文件因大小写重命名后被修改

转载 作者:太空狗 更新时间:2023-10-29 14:06:36 25 4
gpt4 key购买 nike

使用 git,在我的 Mac 上根据区分大小写的文件名重命名文件时,我显然没有使用正确的方法。

这是我目前所处情况的模拟,但我不确定如何摆脱...

创建存储库并添加示例文件:

git init
touch Foo.js
git add .
git commit -m 'adding Foo.js'

我如何“重命名”文件(但应该使用 git mv... 代替 :( )

mv Foo.js foo.js
git status

Git status 没有显示任何变化所以我更新了 core.ignorecase 属性

git config core.ignorecase false
git status

现在它显示我需要添加 foo.js。

git add foo.js
git status
git commit -m 'renaming Foo.js to foo.js'

现在,如果我尝试编辑 foo.js

vim foo.js <-- edit foo.js
git status

Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)

modified: Foo.js
modified: foo.js

如果我尝试 git rm Foo.js,它也会尝试删除我的 foo.js 文件。

我当前的 git --version2.1.2

有没有想过如何修复 Foo.js 而我只有 foo.js

最佳答案

在包含文件重命名版本的提交上使用“git revert”。然后您可以 [正确] 重命名该文件 - 正如您在描述中指出的那样 - 并创建一个新的提交。

正确重命名文件的示例:

git mv --force Foo.js foo.js

关于git status 显示两个文件因大小写重命名后被修改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27112584/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com