将Git存储库添加到Perforce库

时间:2013-01-24 09:26:44

标签: git perforce

我正在尝试将已签出的Git存储库添加到我的Perforce软件仓库。不要误会我的意思:Git和Perforce之间没有集成,我只想在那里放一个外部Git repo,以便我可以像Git repo那样访问它,并像往常一样使用pull / push和其他Git动作。

在.git文件夹中,我提交了除TortoiseGit特定文件和hooks文件夹之外的所有内容。

但是,当我将Git repo下载到另一台PC上的Perforce工作区时,git status告诉我'atal: Reference has invalid format: 'refs/remotes/origin/master。所有四个名为master的文件看起来都没问题,例如文件.git\refs\remotes\origin\master包含一个提交哈希后跟一个Windows换行符。

我做错了什么?

1 个答案:

答案 0 :(得分:4)

好的,那一个很明显。 Perforce是愚蠢的,默认情况下会自动转换行尾。见here。可以在高级工作区选项中进行更改。

Git不喜欢.git/*文件中的Windows风格换行符,更糟糕的是,如果所有源代码都有LF换行符并且Perforce将它们转换为CRLF,那么整个Git工作树将被标记为已修改。好极了! (当然,像Git这样的优秀VCS会为您提供“按原样结账,按原样提交”选项,这是唯一有意义的选项。)