我正在使用git进行版本控制的共享项目。我在Windows上,而我的合作伙伴在Unix上。
我的合作伙伴用<file1>.txt
命名了一些文件。当我尝试拉取这些文件时,由于<
和>
是Windows中无效的字符,它们不被接受。这很好,我不需要触碰这些文件。但是,它们被添加到我的提交中,被标记为已删除。因此,如果我推送的话,我将删除这些我不想要的文件。
我不能使用
git reset --hard
,因为它会发现每个这些“已删除”文件的无效路径。有没有一种方法可以将这些文件从我的提交中排除?我尝试将
<file1>
添加到我的.git/info/exclude
文件中,但那并没有起作用。
git commit -a
还是git add .
命令?你想要编辑你的提交还是只想从索引中删除这些文件? - Paulgit mv
更改名称,然后您应该能够执行强制拉取,但这是个人偏好。这是简单的解决方案,因为它允许您编辑这些文件,而不是无法对其进行任何操作。 - user539810git
包(以及其所需的任何依赖项),在Cygwin终端中导航到检出目录(例如cd /cygdrive/c/Users/Nryan6/projects/FooBar
),再次拉取(可能会覆盖本地更改;单击获取更多信息),git mv \<file1\>.txt file1.txt
(对于任何其他文件也是如此),然后提交并推送。Cygwin将U+003C(<
)和U+003E(>
)转换为U+F03C和U+F03E,Windows将允许这样做,但Cygwin将把它们视为普通的<
和>
字符。 - user539810git mv
,提交更改并将更改推送到远程是最简单的。 - user539810