UE4源码版本管理 与VS Github

这件事起因是我最近生病在家修养,无聊搞事,打算修改UE4的管线肝一些东西出来。

然后我发现我需求的版本管理与一般意义上常用的方案不一样。

如果需求是在引擎内部进行版本管理的可以转向以下链接

之前也硬着头皮自己搞管线,顺便用文档记录修改,但是,因为我C++不咋熟悉再加上一些外在原因改管线伴随着一些试错操作,到最后文档记录经常变得一片遭,所以我意识到我需要对代码进行版本控制,把我踩坑经历写出来分享一下。

顺便吐槽下如果源码真的被搞成一片混乱了,解压重下载构建可真是太血压拉满了。


大致步骤我截图了一下:

1.在VisualStudio内安装插件

拓展->管理拓展->联机


2.VisualStudio账户关联一下github账户

3.Git->创建Git存储库(这步同时也可以只创建本地存储库,或者只关联已有远程库)

也可以在网页端GitHub内创建存储库,但注意不要添加.gitignore文件,不然可能会在后续推送到远程时导致一些小错误(浪费时间的血泪史)

4.通过VS界面Git->设置->源代码管理->Git存储库设置->远程->添加

然后把本地原始工程暂存到本地存储库中,然后推送到远程空存储库内

可以在VisualStudio视图内打开Git更改,进行你需要的操作,此处我进行的是推送操作

此处可能有各种报错,我后面会说。但是假如幸运的没有报错,本地的文件就被推送到远程存储库内

此处是我的一个测试存储库

以下是推送这个操作可能遇到的几个错误分享:

Git failed with a fatal error.
mmap failed: Invalid argument
the remote end hung up unexpectedly
send-pack: unexpected disconnect while reading sideband packet
the remote end hung up unexpectedly
failed to push some refs to 'https://github.com/': OpenSSL SSL_read: Connection was reset, errno 10054
https://github.com/github/gitignore/find/master

此处一般来讲是网络问题,因为国内访问Github总是会遇到些许小问题,这时候我的建议是测试下自家的科学上网。


正在推送 main
将分支推送到远程存储库时遇到错误: Git failed with a fatal error.
Git failed with a fatal error.
repository 'https://github.com/xxxxxx/.gitignore/' not found

请查看上面 4.通过VS界面Git... 处的提取和推送网址输入是否有误,一般来说是此处是写你的远程GitHub所在的存储库的网址。


To https://github.com/xxxx
failed to push some refs to 'https://github.com/xxxx'
hint: Updates were rejected because the remote contains work that you do