不确定如何标题这个问题,因为我不是100%确定问题是什么。我假设在将最新更改下载到我们的存储库时,文件已损坏。
我们的一个源文件看起来像这样:
⼀⼀⼀ 㰀⼀猀甀洀洀愀爀礀㸀ഀഀ
嬀䌀甀猀琀漀洀䔀搀椀琀漀爀⠀琀礀瀀攀漀昀⠀唀䤀圀椀搀最攀琀⤀⤀崀ഀഀ
public class UIWidgetInspector : Editor
笀ഀഀ
enum Action
ऀ笀ഀഀ
None,
ऀऀ䴀漀瘀攀Ⰰഀഀ
Scale,
ऀऀ刀漀琀愀琀攀Ⰰഀഀ
}
ഀഀ
我不知道为什么会发生这种情况,但是当我看到GitHub上的文件看起来很好,而另一个程序员没有遇到这个问题。我假设当我拿到远程分支时有一些腐败。
我的第一直觉是删除并重新下载我的所有远程分支,但我不知道如何执行此操作。
我试过了:
git branch -rd origin/master
然后重新获取,但实际上没有下载任何数据(可能是因为提交仍然存在于本地)。
基本上我不知道发生了什么,再也没有克隆回购(我宁愿不做),我完全迷失了。
答案 0 :(得分:1)
最直接的做法是在新位置制作新克隆:
git clone <repo url> new-directory-name
然后验证新克隆中的问题是否已消失。如果一切正常,并且您不需要现有存储库中的任何内容,只需将其丢弃并使用新副本即可。如果您确实需要从旧存储库中处理的内容,则必须在这两者之间进行一些复制。
关键是存储库没什么特别之处。您可以根据需要拥有尽可能多的副本。
当然,有可能存在编码问题;但这是我要检查的第一件事。
答案 1 :(得分:0)
文件是用ASCII或UTF-8以外的其他方式编码的吗?如果没有,那么Git可能认为它是二进制的并且如果你打开了行结束规范化就会破坏它。
众所周知,Git不喜欢UTF-16编码之类的东西。例如,请参阅How to stop git from breaking encoding on checkout。